Conference Schedule - PGConf.EU 2019
Postgres Partitioning: How Far We've Come
Time: 09:30 - 10:20
Postgres has, for more than decade, allowed users to implement table partitioning in their databases, but doing so wasn't very easy until Postgres 10 happened. Postgres 10, released in 2017, took the first baby steps to improve the user experience in that area, featuring a specialized syntax to implement table partitioning and automating various crucial tasks like tuple routing, setting up the partition constraints, etc. Postgres 11, released in 2018, fixed many of the annoying limitations of partitioning of Postgres 10, offering partitioned indexes, limited forms of unique and foreign key constraints, update row movement, faster partition pruning, etc. Postgres 11 for the first time made it possible for users to seriously consider incorporating partitioning into their production databases. People with huge amounts of data to put into partitions might find it limiting that even Postgres 11 can't handle more than a few hundred partitions, whereas they would expect it to handle thousands. Postgres 12 to be released this year improves that situation to a certain extent, so that people will now be able to use up to a few thousand partitions for common set of use cases. Along with various performance improvements, there will also be new features, closing the feature gap even further.
In this talk, I will describe the partitioning functionality offered by various generations of Postgres, up to and including the latest version 12.