replication between US <-> EU

From: Ondrej Ivanič <ondrej(dot)ivanic(at)gmail(dot)com>
To: "pgsql-general(at)postgresql(dot)org general" <pgsql-general(at)postgresql(dot)org>
Subject: replication between US <-> EU
Date: 2012-03-06 23:31:14
Message-ID: CAM6mieJS6yYBxsihqt4+CPop9_hfc_RcR=Haqy3j2JtxKTG+hQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi,

I would like to get some ideas about subject. I do not have any
preferred solution (hot-standby, Slony or pgpoll) so anything which
can deliver/satisfy the following will good:

- one side completely down: Client should use switch to other side
transparently (Failover / High Availability)

- database writes: transparent for application ie. connection
pooler/... should redirect writes to master (it would be nice to have
writes on both sides and everything in sync) and use local database
for reads (database holds metadata/configuration; just few writes)

- replication lag: Clients shouldn't use "stalled data". Switch to
master or stop and wait are preferred actions.

- automatic failover w/o DBA intervention (or minimal intervention)

The other things to consider are:

- average latency could be up to 400ms. There is no problem to buy
connectivity from different provider if we can use simpler/more robust
setup. But I don't know which provider can deliver low latency link
suitable for this purpose.

- one second lag between master and slave would be tolerable but if we
can go lower that would be nice (low latency link, configuration, ...)
but we need robustness

- kernel or tcp/ip tweaks? We use CentOS 5.7

- database is small; around 1.5GB. It doubles in size every 6..9 months.

- NetScaler like appliance could be used

Thanks!

--
Ondrej Ivanic
(ondrej(dot)ivanic(at)gmail(dot)com)

Responses

Browse pgsql-general by date

  From Date Subject
Next Message John R Pierce 2012-03-06 23:36:58 Re: replication between US <-> EU
Previous Message Chris Angelico 2012-03-06 22:48:04 Re: Complex transactions without using plPgSQL Functions. It is possible?