Class PartitionUtils


  • public final class PartitionUtils
    extends java.lang.Object
    • Method Detail

      • rangePartition

        public static <TASK> java.util.List<TASK> rangePartition​(int concurrency,
                                                                 long nodeCount,
                                                                 java.util.function.Function<Partition,​TASK> taskCreator,
                                                                 java.util.Optional<java.lang.Integer> minBatchSize)
      • rangePartitionWithBatchSize

        public static <TASK> java.util.List<TASK> rangePartitionWithBatchSize​(long nodeCount,
                                                                              long batchSize,
                                                                              java.util.function.Function<Partition,​TASK> taskCreator)
      • numberAlignedPartitioning

        public static java.util.List<Partition> numberAlignedPartitioning​(int concurrency,
                                                                          long nodeCount,
                                                                          long alignTo)
      • numberAlignedPartitioning

        public static <TASK> java.util.List<TASK> numberAlignedPartitioning​(int concurrency,
                                                                            long nodeCount,
                                                                            long alignTo,
                                                                            java.util.function.Function<Partition,​TASK> taskCreator)
      • degreePartition

        public static <TASK> java.util.List<TASK> degreePartition​(Graph graph,
                                                                  int concurrency,
                                                                  java.util.function.Function<DegreePartition,​TASK> taskCreator,
                                                                  java.util.Optional<java.lang.Integer> minBatchSize)
      • degreePartitionWithBatchSize

        public static <TASK> java.util.List<TASK> degreePartitionWithBatchSize​(Graph graph,
                                                                               long batchSize,
                                                                               java.util.function.Function<DegreePartition,​TASK> taskCreator)
      • rangePartitionActualBatchSizes

        public static java.util.List<java.lang.Long> rangePartitionActualBatchSizes​(int concurrency,
                                                                                    long nodeCount,
                                                                                    java.util.Optional<java.lang.Integer> minBatchSize)
      • blockAlignedPartitioning

        public static <TASK> java.util.Iterator<TASK> blockAlignedPartitioning​(HugeLongArray sortedIds,
                                                                               int blockShift,
                                                                               java.util.function.Function<Partition,​TASK> taskCreator)