← Go back

Compiled SPARQL Operator Trees

Bachelor Thesis

For our tensor-based RDF triple store we developed a highly flexible data structure based on advanced C++ Metaprogramming. When running queries multiple times, an operator tree can be reused. An additional performance gain can be expected, when taking statistics from a previous run and compile an operator tree. This way, the second run of a query benefits from a compiler optimizations in the operator tree.

The student will implement three parts:

  • gather statistics from a run of a greedy just-in-time query planner
  • generate code for a hard-coded operator tree
  • compile and load the hard-coded operator tree and use it
  • The student will evaluate costs and benefits of compiling with respect to overhead, speedup and scalability. The thesis includes a theoretical discussion of the data structure and query processing.

Requirement: solid modern C++11/14/17/20 skills