Details
-
Improvement
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
-
None
Description
Currently the coordinator node sends writes to each replica. In multi-dc situations, it would be more efficient to have the coordinator talk to a single node in each DC, which would forward the writes to the other replicas local to it. (All replicas would continue to ack to the coordinator.)
Shouldn't be difficult to add a header to RMVH saying "consult the Strategy to see who else is local to you and queue it off to them as well."
For example, consider two data centers with the following nodes:
DC1: A, B, C
DC2: D, E, F
A client connected to node A performs an insert that should be replicated to
{B,C,E,F}. Currently, A will send a MUTATION verb to each of those nodes directly. But communication to E and F is relatively expensive since they are in the other data center from A. So we'd like to send the mutation to just one, say E, with a tag saying "forward this to F as well."