Geographical multi-master replication

From: Ruben Rubio Rey <tk421(dot)1(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Geographical multi-master replication
Date: 2019-01-24 23:02:26
Message-ID: CABNqb5Zk-1EbHUuhMPHzBSU+UcwDVdoUuQO396ywGTqpv_qqZQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

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
<https://www.postgresql.org/docs/11/different-replication-solutions.html>,
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
<https://www.postgresql.org/docs/11/logical-replication-restrictions.html>
are OK for us, however there is no such thing as conflict resolution
<https://www.postgresql.org/docs/11/logical-replication-conflicts.html>. 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

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Kaushal Shriyan 2019-01-25 02:41:48 Re: Recommended Hardware requirements for PostgreSQL DB Server.
Previous Message Duarte Carreira 2019-01-24 21:51:32 Re: duplicate OID issue when using pg_upgrade to move from 9.3 to 9.5