cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Decker <decker.christ...@gmail.com>
Subject Key to Token clarification
Date Fri, 05 Nov 2010 22:54:26 GMT
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

Mime
View raw message