@lde/sparql-qlever 0.6.12 → 0.8.0
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.
- package/dist/createQlever.d.ts +19 -0
- package/dist/createQlever.d.ts.map +1 -0
- package/dist/createQlever.js +22 -0
- package/dist/importer.d.ts.map +1 -1
- package/dist/importer.js +6 -4
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/package.json +8 -6
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Importer } from './importer.js';
|
|
2
|
+
import { Server } from './server.js';
|
|
3
|
+
export type QleverOptions = {
|
|
4
|
+
indexName?: string;
|
|
5
|
+
port?: number;
|
|
6
|
+
} & ({
|
|
7
|
+
mode: 'docker';
|
|
8
|
+
image: string;
|
|
9
|
+
containerName?: string;
|
|
10
|
+
mountDir?: string;
|
|
11
|
+
} | {
|
|
12
|
+
mode: 'native';
|
|
13
|
+
cwd?: string;
|
|
14
|
+
});
|
|
15
|
+
export declare function createQlever(options: QleverOptions): {
|
|
16
|
+
importer: Importer;
|
|
17
|
+
server: Server<unknown>;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=createQlever.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createQlever.d.ts","sourceRoot":"","sources":["../src/createQlever.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,CACA;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GACD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CACnC,CAAC;AAEF,wBAAgB,YAAY,CAAC,OAAO,EAAE,aAAa;;;EAmBlD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { DockerTaskRunner } from '@lde/task-runner-docker';
|
|
2
|
+
import { NativeTaskRunner } from '@lde/task-runner-native';
|
|
3
|
+
import { Importer } from './importer.js';
|
|
4
|
+
import { Server } from './server.js';
|
|
5
|
+
export function createQlever(options) {
|
|
6
|
+
const taskRunner = options.mode === 'docker'
|
|
7
|
+
? new DockerTaskRunner({
|
|
8
|
+
image: options.image,
|
|
9
|
+
containerName: options.containerName,
|
|
10
|
+
mountDir: options.mountDir,
|
|
11
|
+
port: options.port,
|
|
12
|
+
})
|
|
13
|
+
: new NativeTaskRunner({ cwd: options.cwd });
|
|
14
|
+
return {
|
|
15
|
+
importer: new Importer({ taskRunner, indexName: options.indexName }),
|
|
16
|
+
server: new Server({
|
|
17
|
+
taskRunner,
|
|
18
|
+
indexName: options.indexName ?? 'data',
|
|
19
|
+
port: options.port,
|
|
20
|
+
}),
|
|
21
|
+
};
|
|
22
|
+
}
|
package/dist/importer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../src/importer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,IAAI,iBAAiB,EAC7B,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAgB,MAAM,cAAc,CAAC;AACrD,OAAO,EACL,UAAU,EAEX,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE;QACd,qBAAqB,EAAE,OAAO,CAAC;QAC/B,uBAAuB,EAAE,MAAM,CAAC;KACjC,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,qBAAa,QAAS,YAAW,iBAAiB;IAChD,OAAO,CAAC,SAAS,CAAC;IAClB,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,UAAU,CAAC;IACnB,OAAO,CAAC,aAAa,CAAC;gBAEV,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,OAAO;IAU5D,MAAM,CACjB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,YAAY,GAAG,gBAAgB,GAAG,YAAY,CAAC;YAgC5C,QAAQ;IAYtB,OAAO,CAAC,sBAAsB;
|
|
1
|
+
{"version":3,"file":"importer.d.ts","sourceRoot":"","sources":["../src/importer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,IAAI,iBAAiB,EAC7B,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAgB,MAAM,cAAc,CAAC;AACrD,OAAO,EACL,UAAU,EAEX,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE;QACd,qBAAqB,EAAE,OAAO,CAAC;QAC/B,uBAAuB,EAAE,MAAM,CAAC;KACjC,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,qBAAa,QAAS,YAAW,iBAAiB;IAChD,OAAO,CAAC,SAAS,CAAC;IAClB,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,UAAU,CAAC;IACnB,OAAO,CAAC,aAAa,CAAC;gBAEV,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,OAAO;IAU5D,MAAM,CACjB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,YAAY,GAAG,gBAAgB,GAAG,YAAY,CAAC;YAgC5C,QAAQ;IAYtB,OAAO,CAAC,sBAAsB;YAahB,KAAK;CAsBpB"}
|
package/dist/importer.js
CHANGED
|
@@ -57,13 +57,10 @@ export class Importer {
|
|
|
57
57
|
fileFormatFromMimeType(mimeType) {
|
|
58
58
|
switch (mimeType) {
|
|
59
59
|
case 'application/n-triples':
|
|
60
|
-
case 'application/n-triples+gzip':
|
|
61
60
|
return 'nt';
|
|
62
61
|
case 'application/n-quads':
|
|
63
|
-
case 'application/n-quads+gzip':
|
|
64
62
|
return 'nq';
|
|
65
63
|
case 'text/turtle':
|
|
66
|
-
case 'text/turtle+gzip':
|
|
67
64
|
return 'ttl';
|
|
68
65
|
default:
|
|
69
66
|
throw new Error(`Unsupported media type: ${mimeType}`);
|
|
@@ -72,7 +69,12 @@ export class Importer {
|
|
|
72
69
|
async index(file, format) {
|
|
73
70
|
const workingDir = dirname(file);
|
|
74
71
|
const settingsFile = 'index.settings.json';
|
|
75
|
-
|
|
72
|
+
// Turtle is not line-delimited, so QLever's parallel parser can't split
|
|
73
|
+
// the input into independent chunks. Disable it to avoid parse failures.
|
|
74
|
+
const settings = format === 'ttl'
|
|
75
|
+
? { ...this.qleverOptions, 'parallel-parsing': false }
|
|
76
|
+
: this.qleverOptions;
|
|
77
|
+
await writeFile(`${workingDir}/${settingsFile}`, JSON.stringify(settings));
|
|
76
78
|
// TODO: write index to named volume instead of bind mount for better performance.
|
|
77
79
|
const indexTask = await this.taskRunner.run(`(zcat '${basename(file)}' 2>/dev/null || cat '${basename(file)}') | IndexBuilderMain -i ${this.indexName} -s ${settingsFile} -F ${format} -f -`);
|
|
78
80
|
await this.taskRunner.wait(indexTask);
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lde/sparql-qlever",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"url": "https://github.com/ldengine/lde",
|
|
6
6
|
"directory": "packages/sparql-qlever"
|
|
@@ -23,11 +23,13 @@
|
|
|
23
23
|
"!**/*.tsbuildinfo"
|
|
24
24
|
],
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@lde/dataset": "0.
|
|
27
|
-
"@lde/distribution-downloader": "0.
|
|
28
|
-
"@lde/sparql-importer": "0.0
|
|
29
|
-
"@lde/sparql-server": "0.
|
|
30
|
-
"@lde/task-runner": "0.
|
|
26
|
+
"@lde/dataset": "0.7.0",
|
|
27
|
+
"@lde/distribution-downloader": "0.5.0",
|
|
28
|
+
"@lde/sparql-importer": "0.3.0",
|
|
29
|
+
"@lde/sparql-server": "0.4.10",
|
|
30
|
+
"@lde/task-runner": "0.2.10",
|
|
31
|
+
"@lde/task-runner-docker": "0.2.10",
|
|
32
|
+
"@lde/task-runner-native": "0.2.11",
|
|
31
33
|
"tslib": "^2.3.0"
|
|
32
34
|
}
|
|
33
35
|
}
|