Yuan HOng <hongyuan1306 <at> gmail.com>
2007-07-02 12:41:10 GMT
Can you give me some suggestions as to what replication solution best
suits my situation:
I have an online product sales applicaiton, which is split between two
sites. The web front-end sits at the ISP's data center and accepts
customer order. The server in the office handles the product lisitng,
order processing and also takes ordres on telephone. The two sites are
linked over Internet using ADSL, i.e. not high bandwidth. Due to high
Internet cost here, it would be infeasible to move the two servers
For the production information tables, they will be solely maintained
inhouse, and will be synced to the web server. I have been using
Slony-I for this. But for ordre and customer information, since both
sites shall update these tables, and the link is over a WAN, it seems
the most appropriate replication solution would be a multi-master,
I have done a quick research on the current PostgreSQL replication
solutions: Slony-I, PGPool(-I and -II), PGCluster, and none of them
seems to fit exactly my situaiton:
Slony-I is only single master. The only possible way to use it would
be to use a separate table for order on web server and replicate it
back to inhouse server. But then I have two tables for order, which
will make the applicate much complicated.
PGPool is used primarily for connection poolling. It can do
synchronous replication on database level by sending the SQL commands
to 2 servers. But since the WAN connection is not stable, if the
connection is down for a while, the replication will be broken and I
don't think PGPool can resync the two databases automatically.
PGCluster is similar to PGPool in being a synchronous replication
solution. I thinks it would only be useful for a LAN situation. Over a
WAN, if the link is broken, I think it would also be impossible for it
to resume replication. Also, it seems I can only replicate the whole
database, not the selected tables.
Finding no suitable soluiton for my case, I am wondering whether I
have made a mistake in my database design. Havent' others experienced
similiar situation as I do? Or do I have some misunderstanding of the
capabilities of the existing solutions? Am I overlooking something?
It seems Slony-II would be quite promising, but I can't wait that
long. What is the best choice for me now?
Thanks for helping!
---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not