public interface IPartitioner
Modifier and Type | Method and Description |
---|---|
DecoratedKey |
decorateKey(java.nio.ByteBuffer key)
Transform key to object representation of the on-disk format.
|
java.util.Map<Token,java.lang.Float> |
describeOwnership(java.util.List<Token> sortedTokens)
Calculate the deltas between tokens in the ring in order to compare
relative sizes.
|
default Token |
getMaximumToken()
The biggest token for this partitioner, unlike getMinimumToken, this token is actually used and users wanting to
include all tokens need to do getMaximumToken().maxKeyBound()
Not implemented for the ordered partitioners
|
default int |
getMaxTokenSize() |
Token |
getMinimumToken() |
Token |
getRandomToken() |
Token |
getRandomToken(java.util.Random random) |
Token |
getToken(java.nio.ByteBuffer key) |
Token.TokenFactory |
getTokenFactory() |
AbstractType<?> |
getTokenValidator() |
static IPartitioner |
global() |
Token |
midpoint(Token left,
Token right)
Calculate a Token representing the approximate "middle" of the given
range.
|
AbstractType<?> |
partitionOrdering()
Abstract type that orders the same way as DecoratedKeys provided by this partitioner.
|
boolean |
preservesOrder() |
Token |
split(Token left,
Token right,
double ratioToLeft)
Calculate a Token which take
approximate 0 <= ratioToLeft <= 1 ownership of the given range. |
default java.util.Optional<Splitter> |
splitter() |
static void |
validate(AbstractBounds<?> bounds) |
static void |
validate(java.util.Collection<? extends AbstractBounds<?>> allBounds) |
static IPartitioner global()
static void validate(java.util.Collection<? extends AbstractBounds<?>> allBounds)
static void validate(AbstractBounds<?> bounds)
DecoratedKey decorateKey(java.nio.ByteBuffer key)
key
- the raw, client-facing keyToken midpoint(Token left, Token right)
Token split(Token left, Token right, double ratioToLeft)
approximate 0 <= ratioToLeft <= 1
ownership of the given range.Token getMinimumToken()
default Token getMaximumToken()
Token getToken(java.nio.ByteBuffer key)
Token getRandomToken()
Token getRandomToken(java.util.Random random)
random
- instance of Random to use when generating the tokenToken.TokenFactory getTokenFactory()
boolean preservesOrder()
java.util.Map<Token,java.lang.Float> describeOwnership(java.util.List<Token> sortedTokens)
sortedTokens
- a sorted List of TokensAbstractType<?> getTokenValidator()
AbstractType<?> partitionOrdering()
default java.util.Optional<Splitter> splitter()
default int getMaxTokenSize()
Copyright © 2009-2022 The Apache Software Foundation