Class ShardShuffler

Direct Known Subclasses:

public abstract class ShardShuffler extends Object
A shuffler for shards whose primary goal is to balance load.
  • Constructor Details

    • ShardShuffler

      public ShardShuffler()
  • Method Details

    • nextSeed

      public abstract int nextSeed()
      Return a new seed.
    • shuffle

      public abstract List<ShardRouting> shuffle(List<ShardRouting> shards, int seed)
      Return a shuffled view over the list of shards. The behavior of this method must be deterministic: if the same list and the same seed are provided twice, then the result needs to be the same.
    • shuffle

      public List<ShardRouting> shuffle(List<ShardRouting> shards)
      Equivalent to calling shuffle(shards, nextSeed()).