[Bucardo-general] WAN and Satellite Network Apllicability of Bucardo

Greg Sabino Mullane greg at endpoint.com
Wed Sep 30 14:43:43 UTC 2009


> - Is it possible to use Bucardo in wide-are network (WAN) enviroment
> ? The bandwidth on the master-master link is 34 Mbit/sec, on the 
> master-slave link 10 MBit/sec. Both sides will have a latency of
> 30msec.

Yes, that should be fine.

> Robustness concerning network drop out. - Can (slave) nodes which are
> not continuosly connected to network be used ?

There is not an easy answer to this, as it depends on the usage pattern.
If you have constant updates going from master to multiple slaves, then
a disconnected slave will not currently work well as it will cause
Bucardo to exit and stop any syncs going to other slaves. (there's a
todo item to allow the rest of the slaves to continue in this case).
However, Bucardo is very good about "catching up" slaves that have been
disconnected for a while. Unlike Slony, Bucardo only catches up the sum
of the data changes, and does not have to replay the entire sequence of
events.

> Satellite Connection. This scenario considers the replication
> between master and slave nodes communicating over satellite. - Is
> Bucardo capable for Replication over satellite network (latency 
> 850msec, bandwith 2 MBit/sec) ?

That should be fine, but depends a bit on the amount of changes
happening of course. All replication systems end up by their nature
sending quite a bit of data over the wire. Your best bet would be to run
Bucardo in a test environment, perhaps over a dedicated network
connection, and see much data is flowing. All in all, I don't think the
latency described will be a problem for Bucardo, per se.

> Data consistency. In this scenario, the two master nodes are 
> unconnected, changes are made and new primary-key values are
> generated at both sites. - How does Bucardo act by time the master
> nodes are reconnected ? How about conflict resolution in the case of
> newly introduced, equal PK-values at each (unconneted) site ?

The new keys will simply be sent to each other's side. Conflict
resolution can be configured how you want it: standard method includes
letting one side always win, or basing on the latest change. For most
circumstances, however, you'll want your own business logic. Using
Bucardo, you associate Perl subroutines that are responsible for making
the decision. Basically, they receive a copy of the conflicting rows and
connections to both databases, and return a value to Bucardo indicating
which side should "win". You can even have your subroutine modify the
rows on both sides on the fly if you want.

Thanks for your interest in Bucardo, let us know if we can clarify any
of our answers better. There is also a new wiki for Bucardo that might
answer some of your questions:

http://bucardo.org/wiki/Bucardo

It's fairly new, so you (or anyone else) please feel free to edit it or
make suggestions.

-- 
Greg Sabino Mullane greg at endpoint.com
End Point Corporation
PGP Key: 0x14964AC8

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 226 bytes
Desc: OpenPGP digital signature
Url : https://mail.endcrypt.com/pipermail/bucardo-general/attachments/20090930/89af2c16/attachment.bin 


More information about the Bucardo-general mailing list