Minimum and recommended hardware and software requirements #575
Replies: 7 comments
-
|
I want to add that the hardware requirements highly depend on the dataset. Your recommendations mirror our experiences with indexing and running the full Wikidata. If your dataset is smaller, of course you can use less RAM and disk drive. Concerning the OS: QLever should run natively on Ubuntu 18.04 and newer (we have Dockerfiles building on 18.04 LTS, 20.04 LTS and 21.10, so you should be able to manually perform the steps that these Dockerfiles do, to run QLever outside of Docker. When running QLever inside Docker, also many different operating systems should work. I think there might be some limitations on a minimal version of |
Beta Was this translation helpful? Give feedback.
-
|
I agree that GitHub Discussions is a better place for this than GitHub Issues. |
Beta Was this translation helpful? Give feedback.
-
|
When i did my first Wikidata import trials in 2018 i had a side script that would track memory and disk usage while the tdbloader indexer was running. A similar script that combines the intelligence on the progress might be useful for qlever indexing. |
Beta Was this translation helpful? Give feedback.
-
|
The 32 GB RAM machine behaved strangely: at this point the system got unresponsive. I had to switch it off since it didn't react anymore to ssh commnands or any interaction on the console via mouse or keyboard. |
Beta Was this translation helpful? Give feedback.
-
|
@WolfgangFahl When a process uses much more RAM than a machine has, the machine first starts swapping and at some point the process either crashes (the "best" case because then you can continue to work with the machine) or the machine freezes (the "worst" case because there is not much else you can do then except turning the machine off and on again). |
Beta Was this translation helpful? Give feedback.
-
|
@hannahbast thx for the quick response. I assume that monitoring the RAM from an external process or from within the indexing might be helpful as stated in my other comment. Predicting how much RAM is necessary by trial and error might be tedious and costly. In virtual machine environment such as Java the RAM to be used can be preconfigured. I don't know how this might be possible in a c++ based solution. Given that there is now an SSD available i wonder whether a large swap space on the SSD might do it if the RAM is not used very often. |
Beta Was this translation helpful? Give feedback.
-
|
@WolfgangFahl Yes, QLever will eventually also run with little RAM also for very large knowledge graphs. It's not a principle problem. It's just not our highest priority right now because if you want fast indexing and query times for a large dataset (like Wikidata), you need a reasonable amount of RAM anyway. Note that Virtuoso and Blazegraph are also very slow when you don't give them enough RAM. Also, 128 GB of RAM are pretty standard and cheap by now, and it won't be long before any reasonable PC will have at least that much RAM. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
In the qlever script #562 i am trying to gather some intelligence on the environment along what i understood are the minimum and recommmended hardware and sofware requirements. I'd love to know the "official" requirements so that the documentation might state these and the script might do checks on the feasibility of an environment.
So far I understand that a tested environment is something like:
For the qlever script (which might need renaming to e.g. qlever-demo) the following software is needed:
needed software (Ubuntu)
docker → /usr/bin/docker ✅
top → /usr/bin/top ✅
df → /usr/bin/df ✅
jq → /usr/bin/jq ✅
lsb_release → /usr/bin/lsb_release ✅
free → /usr/bin/free ✅
needed software (MacOS)
docker → /usr/local/bin/docker ✅
top → /usr/bin/top ✅
df → /bin/df ✅
jq → /opt/local/bin/jq ✅
sw_vers → /usr/bin/sw_vers ✅
i intend to use jq for modifying the json config files via command line and included it to the list
Beta Was this translation helpful? Give feedback.
All reactions