org.apache.cassandra.dht
Interface IPartitioner<T extends Token>

All Known Implementing Classes:
CollatingOrderPreservingPartitioner, OrderPreservingPartitioner, RandomPartitioner

public interface IPartitioner<T extends Token>


Method Summary
 java.lang.String decorateKey(java.lang.String key)
          Transform key to on-disk format s.t.
 java.util.Comparator<java.lang.String> getDecoratedKeyComparator()
           
 T getDefaultToken()
           
 T getMinimumToken()
           
 java.util.Comparator<java.lang.String> getReverseDecoratedKeyComparator()
           
 T getToken(java.lang.String key)
           
 Token.TokenFactory getTokenFactory()
           
 T midpoint(T left, T right)
          Calculate a Token representing the approximate "middle" of the given range.
 boolean preservesOrder()
           
 java.lang.String undecorateKey(java.lang.String decoratedKey)
           
 

Method Detail

decorateKey

java.lang.String decorateKey(java.lang.String key)
Transform key to on-disk format s.t. keys are stored in node comparison order. This lets bootstrap rip out parts of the sstable sequentially instead of doing random seeks.

Parameters:
key - the raw, client-facing key
Returns:
decorated on-disk version of key

undecorateKey

java.lang.String undecorateKey(java.lang.String decoratedKey)

getDecoratedKeyComparator

java.util.Comparator<java.lang.String> getDecoratedKeyComparator()

getReverseDecoratedKeyComparator

java.util.Comparator<java.lang.String> getReverseDecoratedKeyComparator()

midpoint

T midpoint(T left,
           T right)
Calculate a Token representing the approximate "middle" of the given range. The Tokens must have been generated by previous calls to midpoint, or be equal to this.getMinimumToken(). The range may not wrap unless it involves this.getMinimumToken().

Returns:
The approximate midpoint between left and right.

getMinimumToken

T getMinimumToken()
Returns:
The minimum possible Token in the range that is being partitioned.

getToken

T getToken(java.lang.String key)
Returns:
a Token that can be used to route a given key

getDefaultToken

T getDefaultToken()
Returns:
the default Token to represent this node if none was saved. Uses the one given in the InitialToken configuration directive, or picks one automatically if that was not given.

getTokenFactory

Token.TokenFactory getTokenFactory()

preservesOrder

boolean preservesOrder()
Returns:
True if the implementing class preserves key order in the Tokens it generates.


Copyright © 2009 The Apache Software Foundation