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.
Apache License 2.0
421 stars 52 forks source link

Docker simple setup #1364

Open NicoLaval opened 5 months ago

NicoLaval commented 5 months ago

Hi,

I tried to instantiate the latest dockerhub Qlever release with a really simple cmd:

docker run adfreiburg/qlever -p 7001:7001

I had the following issue:

Error in command-line argument: '70' could not be parsed as a memory size. Examples for valid memory sizes are "4 B", "3.21 MB", "2.392 TB".
Options for ServerMain:
...

I tried to add -e MEMORY_FOR_QUERIES=1, -m 1 GB, it didn't succeed.

Independently from this issue, can you confirm that it's possible to start Qlever without initial indexed data? (and provide them later?)

yarikoptic commented 5 months ago

confirming on a non-PR (see #1371 ) image and placing port option before image name and not having any 70 in it:

❯ docker run --name qlever --rm -p 7879:7879 adfreiburg/qlever:commit-e3dcc9c
Error in command-line argument: '70' could not be parsed as a memory size. Examples for valid memory sizes are "4 B", "3.21 MB", "2.392 TB".
  -h [ --help ]                         Produce this help message.
  -i [ --index-basename ] arg           The basename of the index files 
...

as for a newbee - yet to figure out how to try to use it...

joka921 commented 5 months ago

Hi,

  1. QLever currently doesn't support SPARQL UPDATE (the implementation is work in progress), so there is not much point in starting it without an index. It is possible to run the index builder first with an empty file as input, but there's not that much point in it.
  2. As the quickstart guide tells you (see the README.md), you should use the qlever-control script which can be installed via pip. We keep it in sync with all changes in the interface of the actual QLever binaries. In particular it optionally outputs the correct command line arguments to manual calls to the QLever binaries, should you ever need them.