Re: On partitioning
Jim Nasby <jim.nasby@bluetreble.com>
From: Jim Nasby <Jim.Nasby@BlueTreble.com>
To: Robert Haas <robertmhaas@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>
Cc: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>, Andres Freund
<andres@2ndquadrant.com>, Alvaro Herrera <alvherre@2ndquadrant.com>, Bruce
Momjian <bruce@momjian.us>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2014-11-12T23:31:48Z
Lists: pgsql-hackers
On 11/12/14, 5:27 PM, Robert Haas wrote: >>> Maybe as anyarray, but I think pg_node_tree >>> >>might even be better. That can also represent data of some arbitrary >>> >>type, but it doesn't enforce that everything is uniform. >> > >> >Of course, the more general you make it, the more likely that it'll be >> >impossible to optimize well. > The point for me is just that range and list partitioning probably > need different structure, and hash partitioning, if we want to support > that, needs something else again. Range partitioning needs an array > of partition boundaries and an array of child OIDs. List partitioning > needs an array of specific values and a child table OID for each. > Hash partitioning needs something probably quite different. We might > be able to do it as a pair of arrays - one of type anyarray and one of > type OID - and meet all needs that way. Another issue is I don't know that we could support multi-key partitions with something like an anyarray. Perhaps that's OK as a first pass, but I expect it'll be one of the next things folks ask for. -- Jim Nasby, Data Architect, Blue Treble Consulting Data in Trouble? Get it in Treble! http://BlueTreble.com