Hi Everybody,
I am currently working with a client that has requirements for geographically dispersed multi-master replication.
The current solution that we have in place is the BDR 1.0.7, which is asynchronous and eventually consistent and it is actually very close to real time. So far we are managing a small cluster of three nodes and we are very happy with this solution.
The problem is that the version for BDR 1.0.7, which has an implementation for postgres 9.4, will be on end of live at the end of this year. Unfortunately the paid solution is out of our budget, so we currently have two options: find an alternative or remove the multi-region implementation. We are currently looking for alternatives.
Reading the different replication options in PostgreSQL 11, it looks like there are two options that might be suitable:
1 - Logical Replication, which according to the documentation Logical replication doesn't require a particular server to
be designated as a master or a replica but allows data to
flow in multiple directions. It should be suitable. The limitations are OK for us, however there is no such thing as conflict resolution. If there is a conflict, the replication just stops. In our application (currently replicated using BDR), we have a very small amount of conflicts, and when conflict happens they are harmless.
What do you think about this solution for geographically dispersed multi-master replication ?
Is there any configuration options for the conflict resolution in the Logical Replication ?
2 - Asynchronous Multimaster Replication - For example by using Bucardo. Does anybody has experience for using Bucardo for Asynchronous Multimaster Replication ? Would be suitable for geographically dispersed infrastructures ?
Is there any other option available that I might be missing ?
Thanks in advance,
Ruben