cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellis (JIRA)" <>
Subject [jira] Updated: (CASSANDRA-1530) More-efficient cross-DC replication
Date Wed, 17 Nov 2010 10:03:14 GMT


Jonathan Ellis updated CASSANDRA-1530:

    Attachment: 1530-cleaned.txt

cleaned up version attached.

one thing that should definitely be fixed is using raw address bytes in the forwarding header
-- an address is always the same length as FBUtilitites.getLocalAddress length.  Hint addresses
are UTF8-encoded so they play nice with the old OPP encoding when we save them; that is not
a concern here.

Would also be good to make hinting DC-aware (and prefer storing hints on replicas in the same
DC as the dead node) but we can make that a separate ticket if necessary.

> More-efficient cross-DC replication
> -----------------------------------
>                 Key: CASSANDRA-1530
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Jonathan Ellis
>             Fix For: 0.7.1
>         Attachments: 1530-cleaned.txt, 1530-joaquin.txt
> 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."

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message