← Go back

Evaluation of Persistence Layer Approaches for In-Memory Triple Stores

Master Thesis

In the DICE group, we develop Tentris, one of the fastest triple stores currently available.

Tentris is an in-memory triple store, i.e. all indices and data are held in the RAM rather than on the disc. While the in-memory nature of Tentris is crucial for its performance, it currently lacks the possibility to store and reload the dataset between two runs.

The objective of this thesis is to explore at least two serialization/deserialization strategies, evaluate them and discuss their pros and cons. Strategies could involve:

  • memory-mapped files
  • custom serialization formats that are incrementally updateable
  • synchronization mechanisms that have the implementation fo ACID guarantees in mind (implementing ACID guarantees is not part of the thesis)

The master thesis includes:

  • develop and implement a two serialization strategies
  • evaluate the two strategies in different use-case settings
  • discuss required extensions to give full ACID guarantees

Required skills:

  • Knowledge of Semantic Web Standards like SPARQL and RDF
  • Good modern C++ coding skills (C++17/20)
  • Experience with C++ template programming