PgConf.Russia 2017 talks

Partitioning with pg_pathman

Ildar Musin
Postgres Professional, Developer

Ildar graduated from the Ufa State Aviation Technical University with a degree in mathematics and programming. He has been involved in the developmet of automation system for microfinance service, enterprise document management systems. Since 2015 he has been working in Postgres Professional company, dealing with development of sectioning functionality of PostgreSQL. Ildar is a developer and co-author of the pg_pathman extension for PostgreSQL DBMS.

Dmitry Ivanov
Postgres Professional, developer

Dmitry works at Postgres Professional company. He is engaged in development of pg_pathman extension for PostgreSQL / Postgres Pro which provides support of fast and effective table sectioning.

Partitioning is a long-awaited feature in PostgreSQL. Although Postgres supports partitioning via inheritance, this approach has some disadvantages, such as the need to manually create partitions and support triggers, significant planning overhead, and no query execution optimizations. In this talk, we’ll tell you about the pg_pathman extension we are developing. pg_pathman supports HASH and RANGE partitioning, performs planning and execution optimizations, supports fast insert by using Custom Node instead of triggers, provides functions for partition management (add, split, merge, etc.), supports FDW, non-blocking data migration, and more. We'll also speak about pg_pathman integration with Postgres Pro Enterprise Edition and Oracle-like syntax support for partitioning. Finally, we'll discuss new partitioning capabilities in PostgreSQL 10, the already implemented features and further development plans.