blob: fb5e59890566b7d6cd5739ed4fc218e384985952 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
from .base import Partitioner
class HashedPartitioner(Partitioner):
"""
Implements a partitioner which selects the target partition based on
the hash of the key
"""
def partition(self, key, partitions=None):
if not partitions:
partitions = self.partitions
size = len(partitions)
idx = hash(key) % size
return partitions[idx]
|