Package org.neo4j.gds.core.loading
Class ArrayIdMap
- java.lang.Object
-
- org.neo4j.gds.api.LabeledIdMap
-
- org.neo4j.gds.core.loading.ArrayIdMap
-
- All Implemented Interfaces:
BatchNodeIterable
,IdMap
,NodeIterator
,PartialIdMap
public class ArrayIdMap extends LabeledIdMap
This is basically a long to int mapper. It sorts the id's in ascending order so its guaranteed that there is no ID greater then nextGraphId / capacity
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.neo4j.gds.api.BatchNodeIterable
BatchNodeIterable.BitSetIdIterator, BatchNodeIterable.IdIterable, BatchNodeIterable.IdIterator
-
Nested classes/interfaces inherited from interface org.neo4j.gds.api.IdMap
IdMap.NodeLabelConsumer
-
-
Field Summary
-
Fields inherited from class org.neo4j.gds.api.LabeledIdMap
labelInformation
-
Fields inherited from interface org.neo4j.gds.api.IdMap
NOT_FOUND, START_NODE_ID
-
-
Constructor Summary
Constructors Constructor Description ArrayIdMap(HugeLongArray graphIds, org.neo4j.gds.collections.HugeSparseLongArray nodeToGraphIds, LabelInformation labelInformation, long nodeCount, long highestNeoId)
initialize the map with pre-built sub arrays
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
contains(long nodeId)
Returns true iff the nodeId is mapped, otherwise false.long
highestNeoId()
static org.neo4j.gds.core.utils.mem.MemoryEstimation
memoryEstimation()
IdMap
rootIdMap()
Returns the original node mapping if the current node mapping is filtered, otherwise it returns itself.java.util.OptionalLong
rootNodeCount()
Number of mapped node ids in the root mapping.long
toMappedNodeId(long nodeId)
Map original nodeId to inner nodeIdlong
toOriginalNodeId(long nodeId)
Map inner nodeId back to original nodeIdlong
toRootNodeId(long nodeId)
Maps an internal id to its root internal node id.ArrayIdMap
withFilteredLabels(java.util.Collection<org.neo4j.gds.NodeLabel> nodeLabels, int concurrency)
-
Methods inherited from class org.neo4j.gds.api.LabeledIdMap
availableNodeLabels, batchIterables, forEachNode, forEachNodeLabel, hasLabel, nodeCount, nodeIterator, nodeIterator, nodeLabels
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.neo4j.gds.api.IdMap
safeToMappedNodeId
-
-
-
-
Constructor Detail
-
ArrayIdMap
public ArrayIdMap(HugeLongArray graphIds, org.neo4j.gds.collections.HugeSparseLongArray nodeToGraphIds, LabelInformation labelInformation, long nodeCount, long highestNeoId)
initialize the map with pre-built sub arrays
-
-
Method Detail
-
memoryEstimation
public static org.neo4j.gds.core.utils.mem.MemoryEstimation memoryEstimation()
-
toMappedNodeId
public long toMappedNodeId(long nodeId)
Description copied from interface:PartialIdMap
Map original nodeId to inner nodeId- Parameters:
nodeId
- must be smaller or equal to the id returned byIdMap.highestNeoId()
-
toOriginalNodeId
public long toOriginalNodeId(long nodeId)
Description copied from interface:IdMap
Map inner nodeId back to original nodeId
-
toRootNodeId
public long toRootNodeId(long nodeId)
Description copied from interface:IdMap
Maps an internal id to its root internal node id. This is necessary for nested (filtered) id mappings. If this mapping is a nested mapping, this method returns the root node id of the parent mapping. For the root mapping this method returns the given node id.
-
rootIdMap
public IdMap rootIdMap()
Description copied from interface:IdMap
Returns the original node mapping if the current node mapping is filtered, otherwise it returns itself.
-
contains
public boolean contains(long nodeId)
Description copied from interface:IdMap
Returns true iff the nodeId is mapped, otherwise false.
-
rootNodeCount
public java.util.OptionalLong rootNodeCount()
Description copied from interface:PartialIdMap
Number of mapped node ids in the root mapping. This is necessary for nested (filtered) id mappings.
-
highestNeoId
public long highestNeoId()
-
withFilteredLabels
public ArrayIdMap withFilteredLabels(java.util.Collection<org.neo4j.gds.NodeLabel> nodeLabels, int concurrency)
-
-