About HeFQUIN
HeFQUIN is a query federation engine for heterogeneous federations of graph data sources (e.g, federated
knowledge graphs) that is currently under development by the Semantic Web research group at Linköping
University.
Features of HeFQUIN
- Support for all features of SPARQL 1.1 (where basic graph patterns, group graph patterns (AND), union
graph patterns, optional patterns, and filters are supported natively within the HeFQUIN engine, and the
other features of SPARQL are supported through integration of the HeFQUIN engine into Apache Jena)
- So far, support for SPARQL endpoints, TPF, and brTPF
- Work on openCypher Property Graphs ongoing
- Work on GraphQL APIs ongoing
- Initial support for vocabulary mappings
- Heuristics-based logical query optimizer
-
Several different cost-based physical optimizers (greedy, dynamic programming, simulated annealing, randomized
iterative improvement)
-
Relevant physical operators, e.g., hash join, symmetric hash join (SHJ), request-based nested-loops join (NLJ),
several variations of bind joins (brTPF-based, UNION-based, FILTER-based, VALUES-based)
- Two execution models (push-based and pull-based)
- Features for getting an understanding of the internals of the engine:
- Printing of logical and physical plans
- Programmatic access to execution statistics on the level of individual operators and data structures, as
well as printing of these statistics from the CLI
- 380+ unit tests
Current Limitations
- HeFQUIN does not yet have a source selection component. All subpatterns of the queries given to HeFQUIN
need to be wrapped in SERVICE clauses.