Logical Replication in PostgreSQL
While physical replication in PostgreSQL works well and has good performance, there are many use-cases where it is not a good fit. This mainly includes cases when only partial replication is needed, when multiple databases need to be replicated to the same target, transformation of the data is needed or replication between different versions of PostgreSQL for upgrading without downtime. These use-cases can be solved by logical replication. The traditional logical replication solutions for PostgreSQL are based on triggers which have a high impact on write performance. That’s why pglogical was developed, which is based on logical decoding of the write ahead log thus having minimal impact on the performance of the source database.
In this talk I will describe the current state of the pglogical project. I will cover use-cases that work well already, what are the limitations, future roadmap and also the state of integration of logical replication into PostgreSQL itself.