Hi all,

I'm trying to figure out some minor understanding problems. As I see it for
each Keyspace each node takes care about a certain tokenRange (describe_ring
gives me the assignment), these TokenRanges have a list of nodes that hold
replicas, a start token and an end token. The tokens are of type byte[] and
can be interpreted as BigInteger. Tokens are usually taken care of at the
node with the next higher token, and the previous (replicas-1)-nodes. Should
a token be larger than the largest token of a node it'll wrap around to the
smallest. So if I have a single node it'll tell me that it has TokenRange X
to X (X being the same token in both cases), that means that it basically
takes care of the entire possible token range, right?

So far it's all DHT as usual, the point I'm having problems is the mapping
of the byte[] keys of the Column Family system to the token system used to
identify the responsible nodes for a given key. You guessed it I want to be
able to, given a key, find the node that is storing the value that goes with
it.

Also how reliable are the informations I'm getting from describe_ring are.
What actions trigger a token assignment change and what affects which nodes
change the nodes holding the replicas (new node join aside)?

Regards,
Chris

Reply via email to