On Tue, May 08, 2012 at 10:59:19AM -0400, Mark Rose wrote: > > Approximately how fast is "eventually"? Is it based on the network > bandwidth/latency between the clusters or is there additional latency? > Basically, would I expect more or less than a second if the two clusters > were 250 ms away?
Depends on the write speed and the bandwidth between clusters, EDS will try to immediately forward a write but there's no gurantees on latency. If the write doesn't make it, a periodic 'fullsync' should make it happen. > Also, how does EDS work with regards to writes to the same key in both > clusters? Does it use a second level of vector clocks or is the vector > clock shared? I imagine last-one-wins wouldn't work in such a setup. Is it > standard practice to send all the writes to a single cluster? A write on both sides is a conflict, plain and simple. You'll either get a sibling or get stuck with last-write-wins. Obviously last-write-wins isn't ideal so you'd probably want to think about resolving siblings yourself. > Does the approximately 1 ms of latency between av zones affect Riak's > performance that much? If the latency is *guranteed* to be that low, then you should be ok, although I'm not sure how the networking works across zones. If the latency can do crazy things in outage conditions, you'll stand a decent chance of screwing the cluster. A downed node is better than a really, really slow one. > We were planning to run across av zones for fault tolerance, just beefing > up single nodes for the moment until rack awareness is available. So the > recommended solution is to use EDS to accomplish this? I'm not sure what you're describing here. > We currently using "role based" host names. On boot, the Riak machine sets > a CNAME to its public DNS name. > > riak1.us-east-1a.example.net -> ec2-203-0-113-239.compute-1.amazonaws.com > riak1.us-east-1b.example.net -> ec2-198-51-100-13.compute-1.amazonaws.com > riak1.us-east-1c.example.net -> ec2-192-0-2-144.compute-1.amazonaws.com > > and the cluster members would be r...@riak1.us-east-1a.example.net, > r...@riak1.us-east-1a.example.net, and r...@riak1.us-east-1c.example.net. > > The names resolve to either the private or public IP of the machine > depending on whether the machine is in the same region or not. We haven't > tried running across regions yet... so I gather this might confuse > Riak/Erlang? Actually, its worse than that because of some legacy behaviour. EDS wants to know the bind IP, not a hostname, and it will exchange node IPs with the other side of the connection, so internal IPs can 'leak' to the other cluster and cause connection problems. There is a workaround for this, and I do plan to address it. Andrew _______________________________________________ riak-users mailing list riak-users@lists.basho.com http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com