Re: does c* 3.0 use one ring for all datacenters?

2018-04-28 Thread Jinhua Luo
 >> >> >
>> >> >> > On Wed, Apr 11, 2018 at 6:27 AM, Jinhua Luo <luajit...@gmail.com>
>> >> >> > wrote:
>> >> >> >>
>> >> >> >> Is it a different answer? One ring?
>> >> >> >>
>> >> >> >> Could you explain your answer according to my example?
>> >> >> >>
>> >> >> >> 2018-04-11 21:24 GMT+08:00 Jonathan Haddad <j...@jonhaddad.com>:
>> >> >> >> > There has always been a single ring.
>> >> >> >> >
>> >> >> >> > You can specify how many nodes in each DC you want and it’ll
>> >> >> >> > figure
>> >> >> >> > out
>> >> >> >> > how
>> >> >> >> > to do it as long as you have the right snitch and are using
>> >> >> >> > NetworkToploogyStrategy.
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > On Wed, Apr 11, 2018 at 6:11 AM Jinhua Luo
>> >> >> >> > <luajit...@gmail.com>
>> >> >> >> > wrote:
>> >> >> >> >>
>> >> >> >> >> Let me clarify my question:
>> >> >> >> >>
>> >> >> >> >> Given we have a cluster of two DCs, each DC has 2 nodes, each
>> >> >> >> >> node
>> >> >> >> >> sets num_token as 50.
>> >> >> >> >> Then how are token ranges distributed in the cluster?
>> >> >> >> >>
>> >> >> >> >> If there is one global ring, then it may be (To simply the
>> >> >> >> >> case,
>> >> >> >> >> let's
>> >> >> >> >> assume vnodes=1):
>> >> >> >> >> {dc1, node1} 1-50
>> >> >> >> >> {dc2, node1} 51-100
>> >> >> >> >> {dc1, node1} 101-150
>> >> >> >> >> {dc1, node2} 151-200
>> >> >> >> >>
>> >> >> >> >> But here comes more questions:
>> >> >> >> >> a) what if I add a new datacenter? Then the token ranges need
>> >> >> >> >> to
>> >> >> >> >> be
>> >> >> >> >> re-balanced?
>> >> >> >> >> If so, what about the data associated with the ranges to be
>> >> >> >> >> balanced?
>> >> >> >> >> move them among DCs?
>> >> >> >> >> But that doesn't make sense, because each keyspace would
>> >> >> >> >> specify
>> >> >> >> >> its
>> >> >> >> >> snith and fix the DCs to store then.
>> >> >> >> >>
>> >> >> >> >> b) It seems no benefits from same ring, because of the snith.
>> >> >> >> >>
>> >> >> >> >> If each DC has own ring, then it may be:
>> >> >> >> >> {dc1, node1} 1-50
>> >> >> >> >> {dc1, node1} 51-100
>> >> >> >> >> {dc2, node1} 1-50
>> >> >> >> >> {dc2, node1} 51-100
>> >> >> >> >>
>> >> >> >> >> I think this is not a trivial question, because each key would
>> >> >> >> >> be
>> >> >> >> >> hashed to determine the token it belongs to, and
>> >> >> >> >> the token range distribution in turns determine which node the
>> >> >> >> >> key
>> >> >> >> >> belongs
>> >> >> >> >> to.
>> >> >> >> >>
>> >> >> >> >> Any official answer?
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> 2018-04-11 20:54 GMT+08:00 Jacques-Henri Berthemet
>> >> >> >> >> <jacques-henri.berthe...@genesys.com>:
>> >> >> >> >> > Maybe I misunderstood something but from what I understand,
>> >> >> >> >> > each
>> >> >> >> >> 

Re: does c* 3.0 use one ring for all datacenters?

2018-04-26 Thread Jeff Jirsa
gt; >> >> >> > On Wed, Apr 11, 2018 at 6:11 AM Jinhua Luo <luajit...@gmail.com
> >
> >> >> >> > wrote:
> >> >> >> >>
> >> >> >> >> Let me clarify my question:
> >> >> >> >>
> >> >> >> >> Given we have a cluster of two DCs, each DC has 2 nodes, each
> >> >> >> >> node
> >> >> >> >> sets num_token as 50.
> >> >> >> >> Then how are token ranges distributed in the cluster?
> >> >> >> >>
> >> >> >> >> If there is one global ring, then it may be (To simply the
> case,
> >> >> >> >> let's
> >> >> >> >> assume vnodes=1):
> >> >> >> >> {dc1, node1} 1-50
> >> >> >> >> {dc2, node1} 51-100
> >> >> >> >> {dc1, node1} 101-150
> >> >> >> >> {dc1, node2} 151-200
> >> >> >> >>
> >> >> >> >> But here comes more questions:
> >> >> >> >> a) what if I add a new datacenter? Then the token ranges need
> to
> >> >> >> >> be
> >> >> >> >> re-balanced?
> >> >> >> >> If so, what about the data associated with the ranges to be
> >> >> >> >> balanced?
> >> >> >> >> move them among DCs?
> >> >> >> >> But that doesn't make sense, because each keyspace would
> specify
> >> >> >> >> its
> >> >> >> >> snith and fix the DCs to store then.
> >> >> >> >>
> >> >> >> >> b) It seems no benefits from same ring, because of the snith.
> >> >> >> >>
> >> >> >> >> If each DC has own ring, then it may be:
> >> >> >> >> {dc1, node1} 1-50
> >> >> >> >> {dc1, node1} 51-100
> >> >> >> >> {dc2, node1} 1-50
> >> >> >> >> {dc2, node1} 51-100
> >> >> >> >>
> >> >> >> >> I think this is not a trivial question, because each key would
> be
> >> >> >> >> hashed to determine the token it belongs to, and
> >> >> >> >> the token range distribution in turns determine which node the
> >> >> >> >> key
> >> >> >> >> belongs
> >> >> >> >> to.
> >> >> >> >>
> >> >> >> >> Any official answer?
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> 2018-04-11 20:54 GMT+08:00 Jacques-Henri Berthemet
> >> >> >> >> <jacques-henri.berthe...@genesys.com>:
> >> >> >> >> > Maybe I misunderstood something but from what I understand,
> >> >> >> >> > each
> >> >> >> >> > DC
> >> >> >> >> > have
> >> >> >> >> > the same ring (0-100 in you example) but it's split
> differently
> >> >> >> >> > between
> >> >> >> >> > nodes in each DC. I think it's the same principle if using
> >> >> >> >> > vnode
> >> >> >> >> > or
> >> >> >> >> > not.
> >> >> >> >> >
> >> >> >> >> > I think the confusion comes from the fact that the ring range
> >> >> >> >> > is
> >> >> >> >> > the
> >> >> >> >> > same (0-100) but each DC manages it differently because nodes
> >> >> >> >> > are
> >> >> >> >> > different.
> >> >> >> >> >
> >> >> >> >> > --
> >> >> >> >> > Jacques-Henri Berthemet
> >> >> >> >> >
> >> >> >> >> > -Original Message-
> >> >> >> >> > From: Jinhua Luo [mailto:luajit...@gmail.com]
> >> >> >> >> > Sent: Wednesday, April 11, 2018 2:26 PM
> >> >> >> >> > To: user@cassandra.apache.org
> >> >> >

Re: does c* 3.0 use one ring for all datacenters?

2018-04-26 Thread Jinhua Luo
t;> >> >> {dc1, node2} 151-200
>> >> >> >>
>> >> >> >> But here comes more questions:
>> >> >> >> a) what if I add a new datacenter? Then the token ranges need to
>> >> >> >> be
>> >> >> >> re-balanced?
>> >> >> >> If so, what about the data associated with the ranges to be
>> >> >> >> balanced?
>> >> >> >> move them among DCs?
>> >> >> >> But that doesn't make sense, because each keyspace would specify
>> >> >> >> its
>> >> >> >> snith and fix the DCs to store then.
>> >> >> >>
>> >> >> >> b) It seems no benefits from same ring, because of the snith.
>> >> >> >>
>> >> >> >> If each DC has own ring, then it may be:
>> >> >> >> {dc1, node1} 1-50
>> >> >> >> {dc1, node1} 51-100
>> >> >> >> {dc2, node1} 1-50
>> >> >> >> {dc2, node1} 51-100
>> >> >> >>
>> >> >> >> I think this is not a trivial question, because each key would be
>> >> >> >> hashed to determine the token it belongs to, and
>> >> >> >> the token range distribution in turns determine which node the
>> >> >> >> key
>> >> >> >> belongs
>> >> >> >> to.
>> >> >> >>
>> >> >> >> Any official answer?
>> >> >> >>
>> >> >> >>
>> >> >> >> 2018-04-11 20:54 GMT+08:00 Jacques-Henri Berthemet
>> >> >> >> <jacques-henri.berthe...@genesys.com>:
>> >> >> >> > Maybe I misunderstood something but from what I understand,
>> >> >> >> > each
>> >> >> >> > DC
>> >> >> >> > have
>> >> >> >> > the same ring (0-100 in you example) but it's split differently
>> >> >> >> > between
>> >> >> >> > nodes in each DC. I think it's the same principle if using
>> >> >> >> > vnode
>> >> >> >> > or
>> >> >> >> > not.
>> >> >> >> >
>> >> >> >> > I think the confusion comes from the fact that the ring range
>> >> >> >> > is
>> >> >> >> > the
>> >> >> >> > same (0-100) but each DC manages it differently because nodes
>> >> >> >> > are
>> >> >> >> > different.
>> >> >> >> >
>> >> >> >> > --
>> >> >> >> > Jacques-Henri Berthemet
>> >> >> >> >
>> >> >> >> > -Original Message-
>> >> >> >> > From: Jinhua Luo [mailto:luajit...@gmail.com]
>> >> >> >> > Sent: Wednesday, April 11, 2018 2:26 PM
>> >> >> >> > To: user@cassandra.apache.org
>> >> >> >> > Subject: Re: does c* 3.0 use one ring for all datacenters?
>> >> >> >> >
>> >> >> >> > Thanks for your reply. I also think separate rings are more
>> >> >> >> > reasonable.
>> >> >> >> >
>> >> >> >> > So one ring for one dc is only for c* 1.x or 2.x without vnode?
>> >> >> >> >
>> >> >> >> > Check these references:
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > https://docs.datastax.com/en/archived/cassandra/1.1/docs/initialize/token_generation.html
>> >> >> >> > http://www.luketillman.com/one-token-ring-to-rule-them-all/
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > https://community.apigee.com/articles/13096/cassandra-token-distribution.html
>> >> >> >> >
>> >> >> >> > Even the riak official said c* splits the ring across dc:
>> >> >> >> &g

Re: does c* 3.0 use one ring for all datacenters?

2018-04-26 Thread Xiaolong Jiang
gt;> {dc2, node1} 1-50
> >> >> >> {dc2, node1} 51-100
> >> >> >>
> >> >> >> I think this is not a trivial question, because each key would be
> >> >> >> hashed to determine the token it belongs to, and
> >> >> >> the token range distribution in turns determine which node the key
> >> >> >> belongs
> >> >> >> to.
> >> >> >>
> >> >> >> Any official answer?
> >> >> >>
> >> >> >>
> >> >> >> 2018-04-11 20:54 GMT+08:00 Jacques-Henri Berthemet
> >> >> >> <jacques-henri.berthe...@genesys.com>:
> >> >> >> > Maybe I misunderstood something but from what I understand, each
> >> >> >> > DC
> >> >> >> > have
> >> >> >> > the same ring (0-100 in you example) but it's split differently
> >> >> >> > between
> >> >> >> > nodes in each DC. I think it's the same principle if using vnode
> >> >> >> > or
> >> >> >> > not.
> >> >> >> >
> >> >> >> > I think the confusion comes from the fact that the ring range is
> >> >> >> > the
> >> >> >> > same (0-100) but each DC manages it differently because nodes
> are
> >> >> >> > different.
> >> >> >> >
> >> >> >> > --
> >> >> >> > Jacques-Henri Berthemet
> >> >> >> >
> >> >> >> > -Original Message-
> >> >> >> > From: Jinhua Luo [mailto:luajit...@gmail.com]
> >> >> >> > Sent: Wednesday, April 11, 2018 2:26 PM
> >> >> >> > To: user@cassandra.apache.org
> >> >> >> > Subject: Re: does c* 3.0 use one ring for all datacenters?
> >> >> >> >
> >> >> >> > Thanks for your reply. I also think separate rings are more
> >> >> >> > reasonable.
> >> >> >> >
> >> >> >> > So one ring for one dc is only for c* 1.x or 2.x without vnode?
> >> >> >> >
> >> >> >> > Check these references:
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >> > https://docs.datastax.com/en/archived/cassandra/1.1/docs/
> initialize/token_generation.html
> >> >> >> > http://www.luketillman.com/one-token-ring-to-rule-them-all/
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >> > https://community.apigee.com/articles/13096/cassandra-
> token-distribution.html
> >> >> >> >
> >> >> >> > Even the riak official said c* splits the ring across dc:
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >> > http://basho.com/posts/business/riak-vs-cassandra-an-
> updated-brief-comparison/
> >> >> >> >
> >> >> >> > Why they said each dc has its own ring?
> >> >> >> >
> >> >> >> >
> >> >> >> > 2018-04-11 19:55 GMT+08:00 Jacques-Henri Berthemet
> >> >> >> > <jacques-henri.berthe...@genesys.com>:
> >> >> >> >> Hi,
> >> >> >> >>
> >> >> >> >> Each DC has the whole ring, each DC contains a copy of the same
> >> >> >> >> data.
> >> >> >> >> When you add replication to a new DC, all data is copied to the
> >> >> >> >> new
> >> >> >> >> DC.
> >> >> >> >>
> >> >> >> >> Within a DC, each range of token is 'owned' by a (primary) node
> >> >> >> >> (and
> >> >> >> >> replicas if you have RF > 1). If you add/remove a node in a DC,
> >> >> >> >> tokens will
> >> >> >> >> be rearranged between all nodes within the DC only, the other
> DCs
> >> >> >> >> won't be
> >> >> >> >> affected.
> >> >> >> >>
> >> >> >> >> --
> >> >> >> >> Jacques-Henri Berthemet
> >> >> >> >>
> >> >> >> >> -Original Message-
> >> >> >> >> From: Jinhua Luo [mailto:luajit...@gmail.com]
> >> >> >> >> Sent: Wednesday, April 11, 2018 12:35 PM
> >> >> >> >> To: user@cassandra.apache.org
> >> >> >> >> Subject: does c* 3.0 use one ring for all datacenters?
> >> >> >> >>
> >> >> >> >> Hi All,
> >> >> >> >>
> >> >> >> >> I know it seems a stupid question, but I am really confused
> about
> >> >> >> >> the
> >> >> >> >> documents on the internet related to this topic, especially it
> >> >> >> >> seems
> >> >> >> >> that it
> >> >> >> >> has different answers for c* with vnodes or not.
> >> >> >> >>
> >> >> >> >> Let's assume the token range is 1-100 for the whole cluster,
> how
> >> >> >> >> does
> >> >> >> >> it distributed into the datacenters? Think that the number of
> >> >> >> >> datacenters is
> >> >> >> >> dynamic in a cluster, if there is only one ring, then the token
> >> >> >> >> range would
> >> >> >> >> change on each node when I add a new datacenter into the
> cluster?
> >> >> >> >> Then it
> >> >> >> >> would involve data migration? It doesn't make sense.
> >> >> >> >>
> >> >> >> >> Looking forward to clarification for c* 3.0, thanks!
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> 
> -
> >> >> >> >> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> >> >> >> >> For additional commands, e-mail:
> user-h...@cassandra.apache.org
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> 
> -
> >> >> >> >> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> >> >> >> >> For additional commands, e-mail:
> user-h...@cassandra.apache.org
> >> >> >> >
> >> >> >> >
> >> >> >> > 
> -
> >> >> >> > To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> >> >> >> > For additional commands, e-mail: user-h...@cassandra.apache.org
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >> 
> -
> >> >> >> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> >> >> >> For additional commands, e-mail: user-h...@cassandra.apache.org
> >> >> >>
> >> >> >
> >> >>
> >> >> 
> -
> >> >> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> >> >> For additional commands, e-mail: user-h...@cassandra.apache.org
> >> >>
> >> >
> >>
> >> -
> >> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> >> For additional commands, e-mail: user-h...@cassandra.apache.org
> >>
> >
>
> -
> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: user-h...@cassandra.apache.org
>
>


-- 
Best regards,
Xiaolong Jiang

Software Engineer at Apple
Columbia University


Re: does c* 3.0 use one ring for all datacenters?

2018-04-26 Thread Jinhua Luo
You're assuming per DC has same total num_tokens, right?
If I add a new node into DC1, will it change the tokens owned by DC2 and DC3?

2018-04-12 0:59 GMT+08:00 Jeff Jirsa <jji...@gmail.com>:
> When you add DC3, they'll get tokens (that aren't currently in use in any
> existing DC). Either you assign tokens (let's pretend we manually assigned
> the other ones, since DC2 = DC1 + 1), but cassandra can also auto-calculate
> them, the exact behavior of which varies by version.
>
>
> Let's pretend it's old style random assignment, and we end up with DC3
> having 4, 17, 22, 36, 48, 53, 64, 73, 83
>
> In this case:
>
> If you use SimpleStrategy and RF=3, a key with token 5 would be placed on
> the hosts with token 10, 11, 17
> If you use NetworkTopologyStrategy with RF=3 per DC, a key with token 5
> would be placed on the hosts with tokens 10,20,30 ; 11, 21,31 ; 17, 22, 36
>
>
>
>
> On Wed, Apr 11, 2018 at 9:36 AM, Jinhua Luo <luajit...@gmail.com> wrote:
>>
>> What if I add a new DC3?
>> The token ranges would reshuffled into DC1, DC2, DC3?
>>
>> 2018-04-11 22:06 GMT+08:00 Jeff Jirsa <jji...@gmail.com>:
>> > Confirming again that it's definitely one ring.
>> >
>> > DC1 may have tokens 0, 10, 20, 30, 40, 50, 60, 70, 80
>> > DC2 may have tokens 1, 11, 21, 31, 41, 51, 61, 71, 81
>> >
>> > If you use SimpleStrategy and RF=3, a key with token 5 would be placed
>> > on
>> > the hosts with token 10, 11, 20
>> > If you use NetworkTopologyStrategy with RF=3 per DC, a key with token 5
>> > would be placed on the hosts with tokens 10,20,30 and 11, 21,31
>> >
>> >
>> >
>> >
>> >
>> > On Wed, Apr 11, 2018 at 6:27 AM, Jinhua Luo <luajit...@gmail.com> wrote:
>> >>
>> >> Is it a different answer? One ring?
>> >>
>> >> Could you explain your answer according to my example?
>> >>
>> >> 2018-04-11 21:24 GMT+08:00 Jonathan Haddad <j...@jonhaddad.com>:
>> >> > There has always been a single ring.
>> >> >
>> >> > You can specify how many nodes in each DC you want and it’ll figure
>> >> > out
>> >> > how
>> >> > to do it as long as you have the right snitch and are using
>> >> > NetworkToploogyStrategy.
>> >> >
>> >> >
>> >> > On Wed, Apr 11, 2018 at 6:11 AM Jinhua Luo <luajit...@gmail.com>
>> >> > wrote:
>> >> >>
>> >> >> Let me clarify my question:
>> >> >>
>> >> >> Given we have a cluster of two DCs, each DC has 2 nodes, each node
>> >> >> sets num_token as 50.
>> >> >> Then how are token ranges distributed in the cluster?
>> >> >>
>> >> >> If there is one global ring, then it may be (To simply the case,
>> >> >> let's
>> >> >> assume vnodes=1):
>> >> >> {dc1, node1} 1-50
>> >> >> {dc2, node1} 51-100
>> >> >> {dc1, node1} 101-150
>> >> >> {dc1, node2} 151-200
>> >> >>
>> >> >> But here comes more questions:
>> >> >> a) what if I add a new datacenter? Then the token ranges need to be
>> >> >> re-balanced?
>> >> >> If so, what about the data associated with the ranges to be
>> >> >> balanced?
>> >> >> move them among DCs?
>> >> >> But that doesn't make sense, because each keyspace would specify its
>> >> >> snith and fix the DCs to store then.
>> >> >>
>> >> >> b) It seems no benefits from same ring, because of the snith.
>> >> >>
>> >> >> If each DC has own ring, then it may be:
>> >> >> {dc1, node1} 1-50
>> >> >> {dc1, node1} 51-100
>> >> >> {dc2, node1} 1-50
>> >> >> {dc2, node1} 51-100
>> >> >>
>> >> >> I think this is not a trivial question, because each key would be
>> >> >> hashed to determine the token it belongs to, and
>> >> >> the token range distribution in turns determine which node the key
>> >> >> belongs
>> >> >> to.
>> >> >>
>> >> >> Any official answer?
>> >> >>
>> >> >>
>> >> >> 2018-04-11 20:54 GMT+08:00 Jacques-Henri Berthemet
>> >> >> <jacques-henr

Re: does c* 3.0 use one ring for all datacenters?

2018-04-11 Thread Jinhua Luo
Thanks for your reply. I also think separate rings are more reasonable.

So one ring for one dc is only for c* 1.x or 2.x without vnode?

Check these references:

https://docs.datastax.com/en/archived/cassandra/1.1/docs/initialize/token_generation.html
http://www.luketillman.com/one-token-ring-to-rule-them-all/
https://community.apigee.com/articles/13096/cassandra-token-distribution.html

Even the riak official said c* splits the ring across dc:
http://basho.com/posts/business/riak-vs-cassandra-an-updated-brief-comparison/

Why they said each dc has its own ring?


2018-04-11 19:55 GMT+08:00 Jacques-Henri Berthemet
<jacques-henri.berthe...@genesys.com>:
> Hi,
>
> Each DC has the whole ring, each DC contains a copy of the same data. When 
> you add replication to a new DC, all data is copied to the new DC.
>
> Within a DC, each range of token is 'owned' by a (primary) node (and replicas 
> if you have RF > 1). If you add/remove a node in a DC, tokens will be 
> rearranged between all nodes within the DC only, the other DCs won't be 
> affected.
>
> --
> Jacques-Henri Berthemet
>
> -Original Message-
> From: Jinhua Luo [mailto:luajit...@gmail.com]
> Sent: Wednesday, April 11, 2018 12:35 PM
> To: user@cassandra.apache.org
> Subject: does c* 3.0 use one ring for all datacenters?
>
> Hi All,
>
> I know it seems a stupid question, but I am really confused about the 
> documents on the internet related to this topic, especially it seems that it 
> has different answers for c* with vnodes or not.
>
> Let's assume the token range is 1-100 for the whole cluster, how does it 
> distributed into the datacenters? Think that the number of datacenters is 
> dynamic in a cluster, if there is only one ring, then the token range would 
> change on each node when I add a new datacenter into the cluster? Then it 
> would involve data migration? It doesn't make sense.
>
> Looking forward to clarification for c* 3.0, thanks!
>
> -
> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: user-h...@cassandra.apache.org
>
>
> -
> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: user-h...@cassandra.apache.org

-
To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
For additional commands, e-mail: user-h...@cassandra.apache.org



RE: does c* 3.0 use one ring for all datacenters?

2018-04-11 Thread Jacques-Henri Berthemet
Hi,

Each DC has the whole ring, each DC contains a copy of the same data. When you 
add replication to a new DC, all data is copied to the new DC.

Within a DC, each range of token is 'owned' by a (primary) node (and replicas 
if you have RF > 1). If you add/remove a node in a DC, tokens will be 
rearranged between all nodes within the DC only, the other DCs won't be 
affected.

--
Jacques-Henri Berthemet

-Original Message-
From: Jinhua Luo [mailto:luajit...@gmail.com] 
Sent: Wednesday, April 11, 2018 12:35 PM
To: user@cassandra.apache.org
Subject: does c* 3.0 use one ring for all datacenters?

Hi All,

I know it seems a stupid question, but I am really confused about the documents 
on the internet related to this topic, especially it seems that it has 
different answers for c* with vnodes or not.

Let's assume the token range is 1-100 for the whole cluster, how does it 
distributed into the datacenters? Think that the number of datacenters is 
dynamic in a cluster, if there is only one ring, then the token range would 
change on each node when I add a new datacenter into the cluster? Then it would 
involve data migration? It doesn't make sense.

Looking forward to clarification for c* 3.0, thanks!

-
To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
For additional commands, e-mail: user-h...@cassandra.apache.org


-
To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
For additional commands, e-mail: user-h...@cassandra.apache.org


does c* 3.0 use one ring for all datacenters?

2018-04-11 Thread Jinhua Luo
Hi All,

I know it seems a stupid question, but I am really confused about the
documents on the internet related to this topic, especially it seems
that it has different answers for c* with vnodes or not.

Let's assume the token range is 1-100 for the whole cluster, how does
it distributed into the datacenters? Think that the number of
datacenters is dynamic in a cluster, if there is only one ring, then
the token range would change on each node when I add a new datacenter
into the cluster? Then it would involve data migration? It doesn't
make sense.

Looking forward to clarification for c* 3.0, thanks!

-
To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
For additional commands, e-mail: user-h...@cassandra.apache.org