Skip to content
forked from ad-freiburg/qlever

Very fast SPARQL Engine, which can handle very large knowledge graphs like the complete Wikidata, offers context-sensitive autocompletion for SPARQL queries, and allows combination with text search. It's faster than engines like Blazegraph or Virtuoso, especially for queries involving large result sets.

License

Notifications You must be signed in to change notification settings

schlegan/qlever

Folders and files

NameName
Last commit message
Last commit date
Aug 23, 2023
Nov 29, 2022
Aug 17, 2023
Jun 15, 2023
Aug 23, 2022
Aug 30, 2023
Jul 20, 2023
May 25, 2023
Aug 30, 2023
Aug 30, 2023
May 24, 2023
Aug 28, 2023
Apr 21, 2023
Apr 19, 2023
May 19, 2023
Jan 24, 2022
Aug 28, 2023
Aug 13, 2022
Nov 29, 2022
Oct 9, 2017
Oct 9, 2017
May 25, 2023
Jun 7, 2023
Sep 5, 2018
Feb 24, 2022
Jul 20, 2023

Repository files navigation

QLever

Docker build Native build Format check Test coverage

QLever (pronounced "Clever") is a SPARQL engine that can efficiently index and query very large knowledge graphs with over 100 billion triples on a single standard PC or server. In particular, QLever is fast for queries that involve large intermediate or final results, which are notoriously hard for engines like Blazegraph or Virtuoso. QLever also supports search in text associated with the knowledge base, as well as SPARQL autocompletion.

Here are demos of QLever on a variety of large knowledge graphs, including the complete Wikidata, Wikimedia Commons, OpenStreetMap, UniProt, PubChem, and DBLP. Those demos also feature QLever's context-sensitive autocompletion, which makes SPARQL query construction so much easier. The knowledge graphs are updated regularly. Click on "Index Information" for a short description (with dates) and basic statistics.

If you use QLever in your research work, please cite one of the following publications: our CIKM'17 paper (combination of SPARQL and text search, with extensive evaluation), our CIKM'22 paper (QLever's autocompletion, with extensive evaluation), our 2023 book chapter (survey of knowledge graphs and basics of QLever, with many example queries).

QLever aims at full SPARQL 1.1 support and is almost there. In particular, a first version of SPARQL 1.1 Federated Query (SERVICE) is implemented since PR #793 and a proof of concept for SPARQL 1.1 Update is implemented since PR #916. If you find a bug in QLever or in one of our demos or if you are missing a feature, please open an issue.

Quickstart

Use QLever via the qlever script, following the instructions on https://github.com/ad-freiburg/qlever-control . The script allows you to control all things QLever does, with all the configuration in one place, the so-called Qleverfile. The script comes with a number of example Qleverfiles (in particular, one for each of the demos mentioned above), which makes it very easy to get started and also helps to write your own Qleverfile for your own data. If you use QLever via docker (which is the default setting), the script pulls the most recent docker image automatically and you don't have to download or compile the code.

If the qlever script does not work for you for whatever reason, have a look at the Dockerfile for Ubuntu 22.04 or the Dockerfiles for older Ubuntu versions. The source code of the qlever script also provides information on how to use QLever (in particular, note the functions action_start and action_index).

An older (and not quite up-to-date anymore) step-by-step instruction can be found here. QLever's advanced features are described here. For more in-depth information, see the various other .md files in this folder, some of which are outdated though. For high-level descriptions how Qlever works and experiences with some concrete datasets, see the Qlever Wiki.

About

Very fast SPARQL Engine, which can handle very large knowledge graphs like the complete Wikidata, offers context-sensitive autocompletion for SPARQL queries, and allows combination with text search. It's faster than engines like Blazegraph or Virtuoso, especially for queries involving large result sets.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 97.0%
  • Python 1.5%
  • CMake 0.7%
  • ANTLR 0.4%
  • Makefile 0.2%
  • Shell 0.1%
  • Other 0.1%