Class PartitionUtils
- java.lang.Object
-
- org.neo4j.gds.core.utils.partition.PartitionUtils
-
public final class PartitionUtils extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
PartitionUtils.DegreeFunction
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <TASK> java.util.Iterator<TASK>
blockAlignedPartitioning(HugeLongArray sortedIds, int blockShift, java.util.function.Function<Partition,TASK> taskCreator)
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)
static <TASK> java.util.List<TASK>
degreePartitionWithBatchSize(java.util.PrimitiveIterator.OfLong nodes, PartitionUtils.DegreeFunction degrees, long batchSize, java.util.function.Function<DegreePartition,TASK> taskCreator)
static <TASK> java.util.List<TASK>
degreePartitionWithBatchSize(Graph graph, long batchSize, java.util.function.Function<DegreePartition,TASK> taskCreator)
static java.util.List<Partition>
numberAlignedPartitioning(int concurrency, long nodeCount, long alignTo)
static <TASK> java.util.List<TASK>
numberAlignedPartitioning(int concurrency, long nodeCount, long alignTo, java.util.function.Function<Partition,TASK> taskCreator)
static java.util.List<Partition>
numberAlignedPartitioningWithMaxSize(int concurrency, long nodeCount, long alignTo, long maxPartitionSize)
static <TASK> java.util.List<TASK>
numberAlignedPartitioningWithMaxSize(int concurrency, long nodeCount, long alignTo, long maxPartitionSize, java.util.function.Function<Partition,TASK> taskCreator)
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)
static java.util.List<java.lang.Long>
rangePartitionActualBatchSizes(int concurrency, long nodeCount, java.util.Optional<java.lang.Integer> minBatchSize)
static <TASK> java.util.List<TASK>
rangePartitionWithBatchSize(long nodeCount, long batchSize, java.util.function.Function<Partition,TASK> taskCreator)
-
-
-
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)
-
numberAlignedPartitioningWithMaxSize
public static java.util.List<Partition> numberAlignedPartitioningWithMaxSize(int concurrency, long nodeCount, long alignTo, long maxPartitionSize)
-
numberAlignedPartitioningWithMaxSize
public static <TASK> java.util.List<TASK> numberAlignedPartitioningWithMaxSize(int concurrency, long nodeCount, long alignTo, long maxPartitionSize, 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)
-
degreePartitionWithBatchSize
public static <TASK> java.util.List<TASK> degreePartitionWithBatchSize(java.util.PrimitiveIterator.OfLong nodes, PartitionUtils.DegreeFunction degrees, 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)
-
-