> The discussion about racks & NTS is also mentioned in this recent article : 
> planetcassandra.org/multi-data-center-replication-in-nosql-databases/
>
> The last section may be of interest for you

Thanks DuyHai.

Note that this section is also part of C* anti-patterns 
http://www.datastax.com/documentation/cassandra/2.0/cassandra/architecture/architecturePlanningAntiPatterns_c.html

But I think it's missing some advice for vnodes (something like "due to 
randomly-generated tokens, define one single rack when using vnodes" ??).

D.

[@@ THALES GROUP INTERNAL @@]

De : DuyHai Doan [mailto:doanduy...@gmail.com]
Envoyé : mardi 5 août 2014 20:07
À : user@cassandra.apache.org
Objet : RE: vnode and NetworkTopologyStrategy: not playing well together ?


The discussion about racks & NTS is also mentioned in this recent article : 
planetcassandra.org/multi-data-center-replication-in-nosql-databases/<http://planetcassandra.org/multi-data-center-replication-in-nosql-databases/>

The last section may be of interest for you
Le 5 août 2014 18:14, "DE VITO Dominique" 
<dominique.dev...@thalesgroup.com<mailto:dominique.dev...@thalesgroup.com>> a 
écrit :
> Jonathan wrote:
>
> Yes, if you have only 1 machine in a rack then your cluster will be 
> imbalanced.  You're going to be able to dream up all sorts of weird failure 
> cases when you choose a scenario like RF=2 & totally imbalanced network arch.
>
> Vnodes attempt to solve the problem of imbalanced rings by choosing so many 
> tokens that it's improbable that the ring will be imbalanced.

Storage/load distro = function(1st replica placement, other replica placement)

vnode solves the balancing pb for 1st replica placement // so, yes, I agree 
with you, but for 1st replica placement only

But NetworkTopologyStrategy (NTS) influences other (2+) replica placement => as 
NTS best behavior relies on token distro, and you have no control on tokens 
with vnodes, the best option I see with **vnode** is to use only one rack with 
NTS.

Dominique


-----Message d'origine-----
De : jonathan.had...@gmail.com<mailto:jonathan.had...@gmail.com> 
[mailto:jonathan.had...@gmail.com<mailto:jonathan.had...@gmail.com>] De la part 
de Jonathan Haddad
Envoyé : mardi 5 août 2014 18:04
À : user@cassandra.apache.org<mailto:user@cassandra.apache.org>
Objet : Re: vnode and NetworkTopologyStrategy: not playing well together ?

Yes, if you have only 1 machine in a rack then your cluster will be imbalanced. 
 You're going to be able to dream up all sorts of weird failure cases when you 
choose a scenario like RF=2 & totally imbalanced network arch.

Vnodes attempt to solve the problem of imbalanced rings by choosing so many 
tokens that it's improbable that the ring will be imbalanced.



On Tue, Aug 5, 2014 at 8:57 AM, DE VITO Dominique 
<dominique.dev...@thalesgroup.com<mailto:dominique.dev...@thalesgroup.com>> 
wrote:
> First, thanks for your answer.
>
>> This is incorrect.  Network Topology w/ Vnodes will be fine, assuming you've 
>> got RF= # of racks.
>
> IMHO, it's not a good enough condition.
> Let's use an example with RF=2
>
> N1/rack_1   N2/rack_1   N3/rack_1   N4/rack_2
>
> Here, you have RF= # of racks
> And due to NetworkTopologyStrategy, N4 will store *all* the cluster data, 
> leading to a completely imbalanced cluster.
>
> IMHO, it happens when using nodes *or* vnodes.
>
> As well-balanced clusters with NetworkTopologyStrategy rely on carefully 
> chosen token distribution/path along the ring *and* as tokens are 
> randomly-generated with vnodes, my guess is that with vnodes and 
> NetworkTopologyStrategy, it's better to define a single (logical) rack // due 
> to "carefully chosen tokens" vs "randomly-generated token" clash.
>
> I don't see other options left.
> Do you see other ones ?
>
> Regards,
> Dominique
>
>
>
>
> -----Message d'origine-----
> De : jonathan.had...@gmail.com<mailto:jonathan.had...@gmail.com> 
> [mailto:jonathan.had...@gmail.com<mailto:jonathan.had...@gmail.com>] De
> la part de Jonathan Haddad Envoyé : mardi 5 août 2014 17:43 À :
> user@cassandra.apache.org<mailto:user@cassandra.apache.org> Objet : Re: vnode 
> and
> NetworkTopologyStrategy: not playing well together ?
>
> This is incorrect.  Network Topology w/ Vnodes will be fine, assuming you've 
> got RF= # of racks.  For each token, replicas are chosen based on the 
> strategy.  Essentially, you could have a wild imbalance in token ownership, 
> but it wouldn't matter because the replicas would be distributed across the 
> rest of the machines.
>
> http://www.datastax.com/documentation/cassandra/2.0/cassandra/architec
> ture/architectureDataDistributeReplication_c.html
>
> On Tue, Aug 5, 2014 at 8:19 AM, DE VITO Dominique 
> <dominique.dev...@thalesgroup.com<mailto:dominique.dev...@thalesgroup.com>> 
> wrote:
>> Hi,
>>
>>
>>
>> My understanding is that NetworkTopologyStrategy does NOT play well
>> with vnodes, due to:
>>
>> ·         Vnode => tokens are (usually) randomly generated (AFAIK)
>>
>> ·         NetworkTopologyStrategy => required carefully choosen tokens for
>> all nodes in order to not to get a VERY unbalanced ring like in
>> https://issues.apache.org/jira/browse/CASSANDRA-3810
>>
>>
>>
>> When playing with vnodes, is the recommendation to define one rack
>> for the entire cluster ?
>>
>>
>>
>> Thanks.
>>
>>
>>
>> Regards,
>>
>> Dominique
>>
>>
>>
>>
>
>
>
> --
> Jon Haddad
> http://www.rustyrazorblade.com
> skype: rustyrazorblade



--
Jon Haddad
http://www.rustyrazorblade.com
skype: rustyrazorblade

Reply via email to