Class Shuffle

java.lang.Object
io.nosqlbench.virtdata.library.basics.core.lfsrs.MetaShift.Func
io.nosqlbench.virtdata.library.basics.shared.from_long.to_long.Shuffle
All Implemented Interfaces:
LongUnaryOperator

public class Shuffle extends MetaShift.Func
This function provides a low-overhead shuffling effect without loading elements into memory. It uses a bundled dataset of pre-computed Galois LFSR shift register configurations, along with a down-sampling method to provide amortized virtual shuffling with minimal memory usage. Essentially, this guarantees that every value in the specified range will be seen at least once before the cycle repeats. However, since the order of traversal of these values is dependent on the LFSR configuration, some orders will appear much more random than others depending on where you are in the traversal cycle. This function *does* yield values that are deterministic.
  • Constructor Details

    • Shuffle

      public Shuffle(long min, long maxPlusOne)
    • Shuffle

      public Shuffle(long min, long maxPlusOne, int bankSelector)
  • Method Details