GraphDB Entity Pool

Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History

The entity pool is a key component of the GraphDB storage layer. From version 6.2 it supports a transactional behavior, which improves space usage and cluster behavior.


The transactional property of the entity pool fixes many issues related to creating IDs. However, entities still need to pre-process and all other commit operations whould be performed, including adding the entities to the permanent store. All these operations are time-consuming, so the new transactional entity pool cannot be faster than the classic one.

There are two implementations - a fully transactional and classic.

  • the default implmentation
  • apropriate for large transactions
  • avoids the overhead.
  • when adding statements, the entities are directly added and cannot be rolled back.
  • all entities are kept in memory - not recomended for large transactions (> 100M statements) to prevent OutOfMemoryErrors
  • good for large number of small transactions
  • mandatory in cluster environment - ensures entity IDs consistency

The entity pool implementation can be selected by the entity-pool-implementation config parameter or the -D command line parameter with the same name.

Parameter Value Description
entity-pool-implementation transactional-simple all entities are kept in memory
  classic (default) for bulk loads
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.