java.lang.Object
org.apache.jena.graph.impl.GraphBase
org.apache.jena.mem.GraphMem
org.apache.jena.mem.GraphMemFast
- All Implemented Interfaces:
org.apache.jena.atlas.lib.Copyable<GraphMem>,Graph,GraphWithPerform
A graph that stores triples in memory. This class is not thread-safe.
Purpose: GraphMem2Fast is a strong candidate for becoming the new default in-memory graph in the upcoming Jena 5, thanks to its improved performance and relatively minor increase in memory usage.
Faster than GraphMemLegacy (specially Graph#add, Graph#find and Graph#stream)
Removing triples is a bit slower than GraphMemLegacy.
Memory consumption is about 6-35% higher than GraphMemLegacy
Maps and sets are based on FastHashBase
Benefits from multiple small optimizations. (see: FastTripleStore)
The heritage of GraphMem:
- Also uses 3 hash-maps indexed by subjects, predicates, and objects
- Values of the maps also switch from arrays to hash sets for the triples
-
Field Summary
Fields inherited from class org.apache.jena.graph.impl.GraphBase
TOSTRING_TRIPLE_BASE, TOSTRING_TRIPLE_LIMITFields inherited from interface org.apache.jena.graph.Graph
emptyGraph -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class org.apache.jena.mem.GraphMem
clear, graphBaseContains, graphBaseFind, graphBaseSize, performAdd, performDelete, stream, streamMethods inherited from class org.apache.jena.graph.impl.GraphBase
add, close, contains, contains, delete, find, find, forTestingOnly_graphBaseFind, getEventManager, getPrefixMapping, getTransactionHandler, isClosed, isEmpty, isIsomorphicWith, notifyAdd, notifyDelete, remove, size, toString, toStringMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.jena.graph.Graph
add, add, close, contains, contains, delete, delete, find, find, find, getEventManager, getPrefixMapping, getTransactionHandler, isClosed, isEmpty, isIsomorphicWith, remove, size, sizeLong
-
Constructor Details
-
GraphMemFast
public GraphMemFast()
-
-
Method Details
-
copy
Description copied from class:GraphMemCreates a copy of this graph. Since the triples and nodes are immutable, the copy contains the same triples and nodes as this graph. Modifications to the copy will not affect this graph.
-