qlever 0.5.7__py3-none-any.whl → 0.5.9__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of qlever might be problematic. Click here for more details.
- qlever/Qleverfiles/Qleverfile.dblp +14 -10
- qlever/Qleverfiles/Qleverfile.dblp-plus +2 -2
- qlever/Qleverfiles/Qleverfile.default +1 -1
- qlever/Qleverfiles/Qleverfile.fbeasy +4 -4
- qlever/Qleverfiles/Qleverfile.freebase +2 -2
- qlever/Qleverfiles/Qleverfile.imdb +1 -1
- qlever/Qleverfiles/Qleverfile.orkg +30 -0
- qlever/Qleverfiles/Qleverfile.osm-planet +1 -1
- qlever/Qleverfiles/Qleverfile.vvz +3 -3
- qlever/Qleverfiles/Qleverfile.wikidata +29 -17
- qlever/Qleverfiles/Qleverfile.yago-4 +4 -4
- qlever/commands/example_queries.py +250 -150
- qlever/commands/index.py +96 -8
- qlever/commands/setup_config.py +47 -31
- qlever/commands/system_info.py +126 -0
- qlever/commands/ui.py +50 -23
- qlever/containerize.py +67 -33
- qlever/qleverfile.py +10 -3
- qlever/util.py +55 -30
- {qlever-0.5.7.dist-info → qlever-0.5.9.dist-info}/METADATA +1 -1
- {qlever-0.5.7.dist-info → qlever-0.5.9.dist-info}/RECORD +25 -25
- {qlever-0.5.7.dist-info → qlever-0.5.9.dist-info}/WHEEL +1 -1
- qlever/Qleverfiles/Qleverfile.wikimedia-commons +0 -37
- qlever/__main__.py +0 -1476
- {qlever-0.5.7.dist-info → qlever-0.5.9.dist-info}/LICENSE +0 -0
- {qlever-0.5.7.dist-info → qlever-0.5.9.dist-info}/entry_points.txt +0 -0
- {qlever-0.5.7.dist-info → qlever-0.5.9.dist-info}/top_level.txt +0 -0
qlever/util.py
CHANGED
|
@@ -29,8 +29,9 @@ def get_total_file_size(patterns: list[str]) -> int:
|
|
|
29
29
|
return total_size
|
|
30
30
|
|
|
31
31
|
|
|
32
|
-
def run_command(
|
|
33
|
-
|
|
32
|
+
def run_command(
|
|
33
|
+
cmd: str, return_output: bool = False, show_output: bool = False
|
|
34
|
+
) -> Optional[str]:
|
|
34
35
|
"""
|
|
35
36
|
Run the given command and throw an exception if the exit code is non-zero.
|
|
36
37
|
If `return_output` is `True`, return what the command wrote to `stdout`.
|
|
@@ -45,7 +46,7 @@ def run_command(cmd: str, return_output: bool = False,
|
|
|
45
46
|
"shell": True,
|
|
46
47
|
"text": True,
|
|
47
48
|
"stdout": None if show_output else subprocess.PIPE,
|
|
48
|
-
"stderr": subprocess.PIPE
|
|
49
|
+
"stderr": subprocess.PIPE,
|
|
49
50
|
}
|
|
50
51
|
result = subprocess.run(f"set -o pipefail; {cmd}", **subprocess_args)
|
|
51
52
|
# If the exit code is non-zero, throw an exception. If something was
|
|
@@ -63,17 +64,20 @@ def run_command(cmd: str, return_output: bool = False,
|
|
|
63
64
|
raise Exception(result.stderr.replace("\n", " ").strip())
|
|
64
65
|
else:
|
|
65
66
|
raise Exception(
|
|
66
|
-
|
|
67
|
-
|
|
67
|
+
f"Command failed with exit code {result.returncode}"
|
|
68
|
+
f" but nothing written to stderr"
|
|
69
|
+
)
|
|
68
70
|
# Optionally, return what was written to `stdout`.
|
|
69
71
|
if return_output:
|
|
70
72
|
return result.stdout
|
|
71
73
|
|
|
72
74
|
|
|
73
|
-
def run_curl_command(
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
75
|
+
def run_curl_command(
|
|
76
|
+
url: str,
|
|
77
|
+
headers: dict[str, str] = {},
|
|
78
|
+
params: dict[str, str] = {},
|
|
79
|
+
result_file: Optional[str] = None,
|
|
80
|
+
) -> str:
|
|
77
81
|
"""
|
|
78
82
|
Run `curl` with the given `url`, `headers`, and `params`. If `result_file`
|
|
79
83
|
is `None`, return the output, otherwise, write the output to the given file
|
|
@@ -83,22 +87,29 @@ def run_curl_command(url: str,
|
|
|
83
87
|
# Construct and run the `curl` command.
|
|
84
88
|
default_result_file = "/tmp/qlever.curl.result"
|
|
85
89
|
actual_result_file = result_file if result_file else default_result_file
|
|
86
|
-
curl_cmd = (
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
90
|
+
curl_cmd = (
|
|
91
|
+
f'curl -s -o "{actual_result_file}"'
|
|
92
|
+
f' -w "%{{http_code}}\n" {url}'
|
|
93
|
+
+ "".join([f' -H "{key}: {value}"' for key, value in headers.items()])
|
|
94
|
+
+ "".join(
|
|
95
|
+
[
|
|
96
|
+
f" --data-urlencode {key}={shlex.quote(value)}"
|
|
97
|
+
for key, value in params.items()
|
|
98
|
+
]
|
|
99
|
+
)
|
|
100
|
+
)
|
|
101
|
+
result = subprocess.run(
|
|
102
|
+
curl_cmd, shell=True, text=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE
|
|
103
|
+
)
|
|
95
104
|
# Case 1: An error occurred, raise an exception.
|
|
96
105
|
if result.returncode != 0:
|
|
97
106
|
if len(result.stderr) > 0:
|
|
98
107
|
raise Exception(result.stderr)
|
|
99
108
|
else:
|
|
100
|
-
raise Exception(
|
|
101
|
-
|
|
109
|
+
raise Exception(
|
|
110
|
+
f"curl command failed with exit code "
|
|
111
|
+
f"{result.returncode}, stderr is empty"
|
|
112
|
+
)
|
|
102
113
|
# Case 2: Return output (read from `default_result_file`).
|
|
103
114
|
if result_file is None:
|
|
104
115
|
result_file_path = Path(default_result_file)
|
|
@@ -117,9 +128,9 @@ def is_qlever_server_alive(port: str) -> bool:
|
|
|
117
128
|
|
|
118
129
|
message = "from the qlever script".replace(" ", "%20")
|
|
119
130
|
curl_cmd = f"curl -s http://localhost:{port}/ping?msg={message}"
|
|
120
|
-
exit_code = subprocess.call(
|
|
121
|
-
|
|
122
|
-
|
|
131
|
+
exit_code = subprocess.call(
|
|
132
|
+
curl_cmd, shell=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL
|
|
133
|
+
)
|
|
123
134
|
return exit_code == 0
|
|
124
135
|
|
|
125
136
|
|
|
@@ -152,15 +163,15 @@ def show_process_info(psutil_process, cmdline_regex, show_heading=True):
|
|
|
152
163
|
|
|
153
164
|
try:
|
|
154
165
|
pinfo = psutil_process.as_dict(
|
|
155
|
-
|
|
156
|
-
|
|
166
|
+
attrs=["pid", "username", "create_time", "memory_info", "cmdline"]
|
|
167
|
+
)
|
|
157
168
|
# Note: pinfo[`cmdline`] is `None` if the process is a zombie.
|
|
158
|
-
cmdline = " ".join(pinfo[
|
|
169
|
+
cmdline = " ".join(pinfo["cmdline"] or [])
|
|
159
170
|
if len(cmdline) == 0 or not re.search(cmdline_regex, cmdline):
|
|
160
171
|
return False
|
|
161
|
-
pid = pinfo[
|
|
162
|
-
user = pinfo[
|
|
163
|
-
start_time = datetime.fromtimestamp(pinfo[
|
|
172
|
+
pid = pinfo["pid"]
|
|
173
|
+
user = pinfo["username"] if pinfo["username"] else ""
|
|
174
|
+
start_time = datetime.fromtimestamp(pinfo["create_time"])
|
|
164
175
|
if start_time.date() == date.today():
|
|
165
176
|
start_time = start_time.strftime("%H:%M")
|
|
166
177
|
else:
|
|
@@ -193,10 +204,24 @@ def is_port_used(port: int) -> bool:
|
|
|
193
204
|
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
194
205
|
# Ensure that the port is not blocked after the check.
|
|
195
206
|
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
|
|
196
|
-
sock.bind((
|
|
207
|
+
sock.bind(("", port))
|
|
197
208
|
sock.close()
|
|
198
209
|
return False
|
|
199
210
|
except OSError as err:
|
|
200
211
|
if err.errno != errno.EADDRINUSE:
|
|
201
212
|
log.warning(f"Failed to determine if port is used: {err}")
|
|
202
213
|
return True
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
def format_size(bytes, suffix="B"):
|
|
217
|
+
"""
|
|
218
|
+
Scale bytes to its proper format
|
|
219
|
+
e.g:
|
|
220
|
+
1253656 => '1.20MB'
|
|
221
|
+
1253656678 => '1.17GB'
|
|
222
|
+
"""
|
|
223
|
+
factor = 1024
|
|
224
|
+
for unit in ["", "K", "M", "G", "T", "P"]:
|
|
225
|
+
if bytes < factor:
|
|
226
|
+
return f"{bytes:.2f} {unit}{suffix}"
|
|
227
|
+
bytes /= factor
|
|
@@ -1,52 +1,52 @@
|
|
|
1
1
|
qlever/__init__.py,sha256=7VKA8tp5iHZQyTXhDOcxUbloZ7WyxDnkruq0iJOzQcE,1403
|
|
2
|
-
qlever/__main__.py,sha256=MqM37bEzQeJEGUXZvuLcilIvnObZiG2eTGIkfKGpdnw,62016
|
|
3
2
|
qlever/command.py,sha256=yOr0Uc8D8-AM7EjwDsVzbc3KNYjPH-FVOZhIHkqO588,2749
|
|
4
3
|
qlever/config.py,sha256=qYPy-MQ7BwGrvKSazQWhs0lnlOFqm-d47mpZhc3fptc,10254
|
|
5
|
-
qlever/containerize.py,sha256=
|
|
4
|
+
qlever/containerize.py,sha256=bnHmjKIFEe-NcuAMRNnXAFjRVLcLnk9f5JspCCyhgt8,5210
|
|
6
5
|
qlever/log.py,sha256=2O_RvFymnu_dB10ErBTAOsI8bgjORfdD0tE3USH-siM,1315
|
|
7
6
|
qlever/qlever_main.py,sha256=tA_xqOs_FjvqlDIvKTprwuysfTwzsUjE7at26gRhCVA,2336
|
|
8
7
|
qlever/qlever_old.py,sha256=X-JxmepFKYeFgSLLp0TRDNqXSxDwIbc8_0Xstiems8c,62026
|
|
9
|
-
qlever/qleverfile.py,sha256=
|
|
10
|
-
qlever/util.py,sha256=
|
|
11
|
-
qlever/Qleverfiles/Qleverfile.dblp,sha256=
|
|
12
|
-
qlever/Qleverfiles/Qleverfile.dblp-plus,sha256=
|
|
8
|
+
qlever/qleverfile.py,sha256=whFQOBCEb7XsCaLwBgI2rleRZaxTVEXe-mDCpgHnvss,13611
|
|
9
|
+
qlever/util.py,sha256=qLxBRyHPT2VTj0xcOCFcP6HV-Lm-g-64QpvOc4V0_a8,8029
|
|
10
|
+
qlever/Qleverfiles/Qleverfile.dblp,sha256=wXZweNfYgEx-IGF1vIJMgqYUSWanQlzPj1EzUOGVuXA,1340
|
|
11
|
+
qlever/Qleverfiles/Qleverfile.dblp-plus,sha256=TJHxp8I1P6JKJjbuAllEpB32-huuY1gH0FlenqPVJ5g,1334
|
|
13
12
|
qlever/Qleverfiles/Qleverfile.dbpedia,sha256=aaNZZayE-zVePGSwPzXemkX__Ns8-kP_E7DNNKZPnqg,1160
|
|
14
|
-
qlever/Qleverfiles/Qleverfile.default,sha256=
|
|
13
|
+
qlever/Qleverfiles/Qleverfile.default,sha256=Kj-J1Kkv8PWN7wuMdZU6DUUlEuBIcSNysJCE-R63we8,2407
|
|
15
14
|
qlever/Qleverfiles/Qleverfile.dnb,sha256=43w_CVi00yf7FHdDvBtHHQR3yU1d-JCNnD_uxYZJOvk,1803
|
|
16
|
-
qlever/Qleverfiles/Qleverfile.fbeasy,sha256=
|
|
17
|
-
qlever/Qleverfiles/Qleverfile.freebase,sha256=
|
|
18
|
-
qlever/Qleverfiles/Qleverfile.imdb,sha256=
|
|
15
|
+
qlever/Qleverfiles/Qleverfile.fbeasy,sha256=9dwCMltT0BIMN4LRmaZFp1a7aV0kh0nJ9XLiQb_NJNo,940
|
|
16
|
+
qlever/Qleverfiles/Qleverfile.freebase,sha256=eFMOxeyuWVbb06Gv2-VFkuKE5tTyckddTDHdw5wbZN8,1028
|
|
17
|
+
qlever/Qleverfiles/Qleverfile.imdb,sha256=1xUBFimgnEHKP_o6tlqwJvIVpEE4Zx6UK_JnnQsG7Ew,1638
|
|
19
18
|
qlever/Qleverfiles/Qleverfile.ohm-planet,sha256=yG6NgW6x6sGTzmCi1wEAkQ-i9goTj2u3PQxvCUwjExs,2122
|
|
20
19
|
qlever/Qleverfiles/Qleverfile.olympics,sha256=5w9BOFwEBhdSzPz-0LRxwhv-7Gj6xbF539HOXr3cqD0,1088
|
|
20
|
+
qlever/Qleverfiles/Qleverfile.orkg,sha256=Uizz-RhlSeExgfckWztewa4l_v3zMN8IR7NaGYKrqt4,937
|
|
21
21
|
qlever/Qleverfiles/Qleverfile.osm-country,sha256=Pb9o5H3b7wVlVRgdiPHWCvrnkIRS1YUhxOazbUmoKZE,1897
|
|
22
|
-
qlever/Qleverfiles/Qleverfile.osm-planet,sha256=
|
|
22
|
+
qlever/Qleverfiles/Qleverfile.osm-planet,sha256=555aaMOIzAILvzwpCjucd_GE7TlYxmT2Qh8hME68stU,1418
|
|
23
23
|
qlever/Qleverfiles/Qleverfile.pubchem,sha256=YuDzWQmukSvL1opu7cf1KX9407_P21lmecYZ9cdbuvA,5611
|
|
24
24
|
qlever/Qleverfiles/Qleverfile.scientists,sha256=9eZ2c6P9a3E3VHa3RR7LdOQbF4k3oyyrn56Z3u4LZYs,1164
|
|
25
25
|
qlever/Qleverfiles/Qleverfile.uniprot,sha256=9kAKseomdUnIt7EAZge39g1MTuaLVaSW9JYLHzIMolM,2338
|
|
26
|
-
qlever/Qleverfiles/Qleverfile.vvz,sha256=
|
|
27
|
-
qlever/Qleverfiles/Qleverfile.wikidata,sha256=
|
|
28
|
-
qlever/Qleverfiles/Qleverfile.wikimedia-commons,sha256=5JJ1MIp6LoM-ROCDFFIRvLREepCF4i4PnjOT9AFihzQ,2247
|
|
26
|
+
qlever/Qleverfiles/Qleverfile.vvz,sha256=cLzm85erKoFCDllH5eFcSi35MdR6Tahj1MgtvGRxanM,922
|
|
27
|
+
qlever/Qleverfiles/Qleverfile.wikidata,sha256=BB7GHAY-lV0B10BWabPOUKtqWjEHFPn3UQc6f4i2-14,2474
|
|
29
28
|
qlever/Qleverfiles/Qleverfile.wikipathways,sha256=UFEVLrtOBiSQfibBN9xc2wDXrnWcnx5f8PY9khcE6bc,1983
|
|
30
|
-
qlever/Qleverfiles/Qleverfile.yago-4,sha256=
|
|
29
|
+
qlever/Qleverfiles/Qleverfile.yago-4,sha256=hAS_2ZmC1zxNsKXip7t1F_iqu3CC-6O7v6HZhuFbnWY,1819
|
|
31
30
|
qlever/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
32
31
|
qlever/commands/add_text_index.py,sha256=dkqYtwgOhgnXiei_eyhBWYCtdAiQUEmjWoa3JMlMb4c,3641
|
|
33
32
|
qlever/commands/cache_stats.py,sha256=6JjueQstAqc8dNfgY8TP2EitFMxdUvCwrcyd7KUEb2o,4157
|
|
34
33
|
qlever/commands/clear_cache.py,sha256=AnE1MOoj1ZexxrRT8FGeBLlv8rtQIVV4DP8VBn5-X-s,2843
|
|
35
|
-
qlever/commands/example_queries.py,sha256=
|
|
34
|
+
qlever/commands/example_queries.py,sha256=rtMOQw7cJe0Aia_1O7UyKcxHbz7ln9BSZYWUQI9OFA8,16389
|
|
36
35
|
qlever/commands/get_data.py,sha256=f9kjZI3TKad6JHSuXWNkeoajmW8h0Sx8ShvjauDCtNo,1412
|
|
37
|
-
qlever/commands/index.py,sha256=
|
|
36
|
+
qlever/commands/index.py,sha256=Ebb5dSDJ0u_AElKPgMzQN0YxPgpqbeNT1JscM3xGiMo,10256
|
|
38
37
|
qlever/commands/index_stats.py,sha256=_BiUNBhmbYd9RPxrlm4HF0oENO6JmqnRiAkwkyOdN4U,11722
|
|
39
38
|
qlever/commands/log.py,sha256=8Krt3MsTUDapYqVw1zUu5X15SF8mV97Uj0qKOWK8jXk,1861
|
|
40
39
|
qlever/commands/query.py,sha256=_IDH-M8gKL_f1i5wzu0X452pZSUD0_qXl6bPXC85wX0,2750
|
|
41
|
-
qlever/commands/setup_config.py,sha256=
|
|
40
|
+
qlever/commands/setup_config.py,sha256=p0-wJcalzEOrSkIiaicQjOkp_WVNEeLsd0A_WZrlGfs,3345
|
|
42
41
|
qlever/commands/start.py,sha256=2rOtk3NmhEs28D5csL_a1BdjSWU9VkcH6AqYT0vdww0,9285
|
|
43
42
|
qlever/commands/status.py,sha256=5S6EdapZEwFKV9cQZtNYcZhMbAXAY-FP6ggjIhfX8ek,1631
|
|
44
43
|
qlever/commands/stop.py,sha256=TZs4bxKHvujlZAU8BZmFjA5eXSZNAa6EeNzvPpEZsuI,4139
|
|
45
|
-
qlever/commands/
|
|
44
|
+
qlever/commands/system_info.py,sha256=SShsnEV7QROgdbABeJ6Wk4U_CNjqlYO1J5HrpNCVNMs,4615
|
|
45
|
+
qlever/commands/ui.py,sha256=rZxIYHZr-PqgQKfvVwl8woDnTGR-sFc-f6cPjcORaOk,3611
|
|
46
46
|
qlever/commands/warmup.py,sha256=WOZSxeV8U_F6pEEnAb6YybXLQMxZFTRJXs4BPHUhsmc,1030
|
|
47
|
-
qlever-0.5.
|
|
48
|
-
qlever-0.5.
|
|
49
|
-
qlever-0.5.
|
|
50
|
-
qlever-0.5.
|
|
51
|
-
qlever-0.5.
|
|
52
|
-
qlever-0.5.
|
|
47
|
+
qlever-0.5.9.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
48
|
+
qlever-0.5.9.dist-info/METADATA,sha256=uoi2Wb5N4Co5DdD-gG-uaxgfl1PrWhNY5Twr56clyTk,4582
|
|
49
|
+
qlever-0.5.9.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
|
|
50
|
+
qlever-0.5.9.dist-info/entry_points.txt,sha256=U_gbYYi0wwdsn884eb0XoOXfvhACOsxhlO330dZ9bi0,87
|
|
51
|
+
qlever-0.5.9.dist-info/top_level.txt,sha256=kd3zsYqiFd0--Czh5XTVkfEq6XR-XgRFW35X0v0GT-c,7
|
|
52
|
+
qlever-0.5.9.dist-info/RECORD,,
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
# Qleverfile for Wikimedia Commons, TODO: add to https://github.com/ad-freiburg/qlever-control
|
|
2
|
-
#
|
|
3
|
-
# qlever get-data # takes ~3 hours to download .bz2 file of size ~40 GB
|
|
4
|
-
# qlever index # takes ~2 hours and ~40 GB RAM (on an AMD Ryzen 9 5900X)
|
|
5
|
-
# qlever start # starts the server (takes around 15 seconds)
|
|
6
|
-
|
|
7
|
-
[data]
|
|
8
|
-
NAME = wikimedia-commons
|
|
9
|
-
MAIN_RDF_FILE = latest-mediainfo.ttl.gz
|
|
10
|
-
DATA_URL_BASE = https://dumps.wikimedia.org/other/wikibase/commonswiki
|
|
11
|
-
GET_TTL_CMD = wget -nc ${DATA_URL_BASE}/${MAIN_RDF_FILE}
|
|
12
|
-
GET_PROPS_CMD = curl -s https://qlever.cs.uni-freiburg.de/api/wikidata -H "Accept: text/turtle" -H "Content-type: application/sparql-query" --data "PREFIX wikibase: <http://wikiba.se/ontology#> CONSTRUCT { ?s ?p ?o } WHERE { VALUES ?p { wikibase:claim wikibase:directClaim wikibase:novalue wikibase:propertyType wikibase:qualifier wikibase:qualifierValue wikibase:reference wikibase:referenceValue wikibase:statementProperty wikibase:statementValue } ?s ?p ?o }" > properties.nt
|
|
13
|
-
GET_LABELS_CMD = curl -s https://qlever.cs.uni-freiburg.de/api/wikidata -H "Accept: text/turtle" -H "Content-type: application/sparql-query" --data "PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> CONSTRUCT { ?subject rdfs:label ?label } WHERE { ?subject @en@rdfs:label ?label }" > labels.nt
|
|
14
|
-
GET_DATA_CMD = ${GET_TTL_CMD} && ${GET_PROPS_CMD} && ${GET_LABELS_CMD}
|
|
15
|
-
INDEX_DESCRIPTION = Wikimedia Commons from ${DATA_URL_BASE}, version 09.11.2023 + Wikidata triples for rdfs:label and wikibase:claim etc.
|
|
16
|
-
|
|
17
|
-
[index]
|
|
18
|
-
INPUT_FILES = ${data:MAIN_RDF_FILE} labels.nt properties.nt
|
|
19
|
-
CAT_INPUT_FILES = zcat -f ${INPUT_FILES}
|
|
20
|
-
WITH_TEXT_INDEX = from_literals
|
|
21
|
-
STXXL_MEMORY_GB = 5
|
|
22
|
-
SETTINGS_JSON = { "languages-internal": [], "prefixes-external": [""], "locale": { "language": "en", "country": "US", "ignore-punctuation": true }, "ascii-prefixes-only": true, "num-triples-per-batch": 5000000 }
|
|
23
|
-
|
|
24
|
-
[server]
|
|
25
|
-
PORT = 7033
|
|
26
|
-
ACCESS_TOKEN = ${data:NAME}_2511328747
|
|
27
|
-
MEMORY_FOR_QUERIES_GB = 20
|
|
28
|
-
CACHE_MAX_SIZE_GB = 10
|
|
29
|
-
CACHE_MAX_SIZE_GB_SINGLE_ENTRY = 5
|
|
30
|
-
|
|
31
|
-
[runtime]
|
|
32
|
-
SYSTEM = native
|
|
33
|
-
IMAGE = docker.io/adfreiburg/qlever:latest
|
|
34
|
-
|
|
35
|
-
[ui]
|
|
36
|
-
PORT = 7000
|
|
37
|
-
CONFIG = wikimedia-commons
|