On Tue, Feb 5, 2013 at 4:19 PM, aaron morton wrote:
>> There is always num_tokens tokens in the ring.
>>
>>
> I got this wrong.
> Each node *does* have num_tokens tokens.
>
>> With N nodes, the ring is divided into N*num_tokens. Correct?
>
> Yes
>
> In other words it is cluster wide parameter. Co
> There is always num_tokens tokens in the ring.
I got this wrong.
Each node *does* have num_tokens tokens.
>> With N nodes, the ring is divided into N*num_tokens. Correct?
Yes
> In other words it is cluster wide parameter. Correct?
Yes.
Cheers
-
Aaron Morton
Freelance Cass
On Tue, Feb 5, 2013 at 12:42 PM, aaron morton wrote:
> With N nodes, the ring is divided into N*num_tokens. Correct?
>
> There is always num_tokens tokens in the ring.
> Each node has (num_tokens / N) * RF ranges on it.
>
> That means every node should have the same num_token parameter? In other
> With N nodes, the ring is divided into N*num_tokens. Correct?
There is always num_tokens tokens in the ring.
Each node has (num_tokens / N) * RF ranges on it.
> so the ranges of keys are not uniform, although with enough nodes in the
> cluster there probably won't be any really large ranges.
As I understand the num_tokens setting, it makes Cassandra do the following
pseudocode when a new node is added:
for 1...num_tokens do
my_token = rand(0, 2^128-1)
next_token = min(tokens in cluster where token > my_token)
my_range = (my_token, next_token - 1)
done
Now the new node owns n