Dev

Das QA -Unternehmen über die sozialen Netzwerke
qacompany/qendpointqacompany/qendpoint-wikidataDer Qendpoint ist ein sehr skalierbarer Triple Store mit Volltext- und Geosparql-Unterstützung. Es kann als eigenständiger Sparql -Endpunkt oder als Abhängigkeit verwendet werden. Der Qendpoint wird beispielsweise in Kohesio verwendet, wobei jede Wechselwirkung mit der Benutzeroberfläche einer zugrunde liegenden Sparql -Abfrage auf dem Qendpoint entspricht. Auch Qendpoint ist Teil von Qanswer Enabling -Frage, die über RDF -Diagramme beantwortet werden.
Für das Backend/Benchmark
Für das Frontend (nicht obligatorisch, um das Backend zu betreiben)
Sie können Qendpoint über den Scoop -Paket -Manager installieren.
Sie müssen den the-qa-company Eimer hinzufügen, und dann können Sie das qendpoint Manifest installieren, es kann mit diesen Befehlen durchgeführt werden
# Add the-qa-company bucket
scoop bucket add the - qa - company https: // github.com / the - qa - company / scoop - bucket.git
# Install qEndpoint CLI
scoop install qendpointSie können Qendpoint über den Brew Package Manager installieren.
Sie können diesen Befehl installieren
brew install the-qa-company/tap/qendpoint Wenn Sie keinen Zugriff auf Brew oder Scoop haben, ist die Qendpoint-Befehlszeilenschnittstelle auf der Seite "Releases" unter der Datei qendpoint-cli.zip verfügbar. Durch das Extrahieren können Sie ein Bin -Verzeichnis, das Ihrem Weg hinzugefügt werden kann.
Klonen Sie den Qendpoint aus diesem Link: git clone https://github.com/the-qa-company/qEndpoint.git
Wechseln Sie zum Back-End-Verzeichnis cd qendpoint-backend
Kompilieren Sie das Projekt mit diesem Befehl: mvn clean install -DskipTests
Führen Sie das Projekt mit java -jar target/qendpoint-backend-1.2.3-exec.jar aus (ersetzen Sie die Version durch die neueste Version).
Sie können das Projekt als Abhängigkeit verwenden (ersetzen Sie die Version durch die neueste Version).
<dependency>
<groupId>com.the_qa_company</groupId>
<artifactId>qendpoint</artifactId>
<version>1.2.3</version>
</dependency>
git clone https://github.com/the-qa-company/qEndpoint.gitcd qendpoint-frontendnpm installnpm start Die Endpunktinstallateure für Linux, MacOS und Windows finden Sie hier, die Installateure enthalten nicht die Befehlszeile (CLI), nur den Endpunkt .
Sie können eines unserer vorkonfigurierten Docker -Bilder verwenden.
qacompany/qendpointDockerHub : Qacompany/Qendpoint
Dieses Docker -Bild enthält den Endpunkt. Sie können Ihren Datensatz hochladen und damit beginnen.
Sie müssen nur das Bild ausführen und es wird die Umgebung vorbereiten, indem Sie den Index herunterladen und das Repository mit dem folgenden Snippet einrichten:
docker run -p 1234:1234 --name qendpoint qacompany/qendpointSie können auch die Größe des Speichers angeben, indem Sie den Docker Environnement Value mem_size einstellen. Standardmäßig wird dieser Wert auf 6G gesetzt. Sie sollten diesen Wert nicht unter 4G festlegen, da Sie mit großem Datensatz sicherlich keinen Speicher mehr haben. Für einen größeren Datensatz wird auch für Big Dataset ein größerer Wert empfohlen, als Beispiel wird Wikidata-All ohne mindestens 10 g ausgeführt.
docker run -p 1234:1234 --name qendpoint --env MEM_SIZE=6G qacompany/qendpointSie können den Container stoppen und jederzeit erneut ausführen, um die Daten im Inneren zu erhalten (Qendpoint ist der Name des Containers) mit den folgenden Befehlen:
docker stop qendpoint
docker start qendpoint: Beachten Sie, dass dieser Container aufgrund der Größe des Datenindex einen großen Teil der Festplatte einnehmen kann. Löschen Sie den Container, wenn Sie ihn nicht mehr benötigen, indem Sie den folgenden Befehl verwenden:
docker rm qendpointqacompany/qendpoint-wikidataDockerHub : Qacompany/Qendpoint-Wikidata
Dieses Docker -Bild enthält den Endpunkt mit einem Skript zum Herunterladen eines Index, der die Wikidata Truthy -Anweisungen von unseren Servern enthält. Sie müssen also einfach auf den Index -Download warten und damit beginnen.
Sie müssen nur das Bild ausführen und es wird die Umgebung vorbereiten, indem Sie den Index herunterladen und das Repository mit dem folgenden Code einrichten:
docker run -p 1234:1234 --name qendpoint-wikidata qacompany/qendpoint-wikidataSie können auch die Größe des Speichers angeben, indem Sie den Docker Environnement Value mem_size einstellen. Standardmäßig wird dieser Wert auf 6G festgelegt. Für Big Dataset wird auch ein größerer Wert empfohlen, als Beispiel wird Wikidata-All ohne mindestens 10 g ausgeführt.
docker run -p 1234:1234 --name qendpoint-wikidata --env MEM_SIZE=6G qacompany/qendpoint-wikidata Sie können den Datensatz mit dem Umgebungswert hdt_base angeben. Standardmäßig lautet der Wert wikidata_truthy , aber die aktuellen verfügbaren Werte sind:
wikidata_truthy - Wikidata Truthy Aussagen (brauchen mindestens 6G Gedächtnis)wikidata_all - Wikidata -All -Aussagen (brauchen mindestens 10G Speicher) docker run -p 1234:1234 --name qendpoint-wikidata --env MEM_SIZE=10G --env HDT_BASE=wikidata_all qacompany/qendpoint-wikidataSie können den Container stoppen und jederzeit erneut ausführen, um die Daten im Inneren zu erhalten (Qendpoint ist der Name des Containers) mit dem folgenden Code:
docker stop qendpoint-wikidata
docker start qendpoint-wikidataBeachten Sie , dass dieser Container aufgrund der Größe des Datenindex einen riesigen Teil der Festplatte einnehmen kann. Löschen Sie den Container, wenn Sie ihn nicht mehr mit dem Befehl benötigen, wie unten gezeigt:
docker rm qendpoint-wikidataSie können auf http: // localhost: 1234 zugreifen, wo es eine GUI gibt, in der Sie Sparql -Abfragen schreiben und diese ausführen können. Es gibt die erholsame API, mit der Sie Abfragen von jeder Anwendung über http wie folgt ausführen können:
curl -H ' Accept: application/sparql-results+json ' localhost:1234/api/endpoint/sparql --data-urlencode ' query=select * where{ ?s ?p ?o } limit 10 'Hinweis Die erste Abfrage dauert einige Zeit, um den Index dem Speicher abzubilden. Später wird es viel schneller sein!
Die meisten Ergebnisformate sind verfügbar. Sie können beispielsweise verwenden:
application/sparql-results+jsonapplication/sparql-results+xmlapplication/x-binary-rdf-results-tableSie können den Endpunkt mit diesem Befehl ausführen:
java -jar endpoint.jar &Sie finden eine Vorlage der Datei application.Properties in der Backend -Quelle
Wenn Sie die HDT-Datei Ihres Diagramms haben, können Sie sie vor dem Laden des Endpunkts im HDT-Store-Verzeichnis einfügen (standardmäßig hdt-store/index_dev.hdt ).
Wenn Sie den HDT nicht haben, können Sie den Datensatz in den Endpunkt hochladen, indem Sie den Befehl ausführen, während der Endpunkt ausgeführt wird:
curl " http://127.0.0.1:1234/api/endpoint/load " -F " [email protected] " Wenn mydataset.nt die RDF -Datei ist, können Sie alle von RDF4J verwendeten Formate verwenden.
Sie können ein SparQL -Repository mit dieser Methode erstellen. Vergessen Sie nicht, das Repository zu initieren
// Create a SPARQL repository
SparqlRepository repository = CompiledSail . compiler (). compileToSparqlRepository ();
// Init the repository
repository . init (); Sie können Sparql -Abfragen mit dem executeTupleQuery , executeBooleanQuery , executeGraphQuery oder execute ausführen.
// execute the a tuple query
try ( ClosableResult < TupleQueryResult > execute = sparqlRepository . executeTupleQuery (
// the sparql query
"SELECT * WHERE { ?s ?p ?o }" ,
// the timeout
10
)) {
// get the result, no need to close it, closing execute will close the result
TupleQueryResult result = execute . getResult ();
// the tuples
for ( BindingSet set : result ) {
System . out . println ( "Subject: " + set . getValue ( "s" ));
System . out . println ( "Predicate: " + set . getValue ( "p" ));
System . out . println ( "Object: " + set . getValue ( "o" ));
}
}Vergessen Sie nicht, das Repository nach der Verwendung herunterzuschalten
// Shutdown the repository (better to release resources)
repository . shutDown (); Sie können das RDF4J -Repository mit der Methode getRepository() erhalten.
// get the rdf4j repository (if required)
SailRepository rdf4jRepo = repository . getRepository ();Führen Sie den Qendpoint lokal aus
cd wikibase
Verschieben Sie die prefixes.sparql in Ihre Qendpoint -Installation
(RE) Starten Sie Ihren Endpunkt, um die Präfixe zu verwenden
laufen
java -cp wikidata-query-tools-0.3.59-SNAPSHOT-jar-with-dependencies.jar org.wikidata.query.rdf.tool.Update
--sparqlUrl http://localhost:1234/api/endpoint/sparql
--wikibaseHost https://linkedopendata.eu/
--wikibaseUrl https://linkedopendata.eu/
--conceptUri https://linkedopendata.eu/
--wikibaseScheme https
--entityNamespaces 120,122
--start 2022-06-28T11:27:08ZSie können die Parameter an Ihre Wikibase anpassen. In diesem Fall können Sie das EU -Wissensgraphen abfragen. Sie können auch die Startzeit ändern.
In den offenen Problemen finden Sie eine Liste der vorgeschlagenen Merkmale (und bekannten Probleme).
Wenden Sie sich an einen der folgenden Stellen an den Betreuer:
Wenn Sie sich bei Ihnen oder////und aktivieren möchten, unterstützen Sie die aktive Entwicklung von Qendpoint:
Erstens danke , dass Sie sich die Zeit genommen haben, um einen Beitrag zu leisten! Beiträge machen die Open-Source-Community zu einem erstaunlichen Ort, um zu lernen, zu inspirieren und zu kreieren. Alle Beiträge, die Sie leisten, werden allen anderen zugute kommen und werden sehr geschätzt .
Bitte lesen Sie unsere Beitragsrichtlinien und vielen Dank, dass Sie beteiligt sind!
Die ursprüngliche Einrichtung dieses Repositorys erfolgt von der QA -Firma.
Eine vollständige Liste aller Autoren und Mitwirkenden finden Sie auf der Seite der Mitwirkenden.
Qendpoint folgt gute Sicherheitsverfahren, aber 100% Sicherheit kann nicht gewährleistet werden. Qendpoint wird "wie ist" ohne Garantie bereitgestellt. Verwenden Sie auf eigenes Risiko.
Für weitere Informationen und zur Meldung von Sicherheitsfragen finden Sie in unserer Sicherheitsdokumentation.
Dieses Projekt ist im Rahmen der GNU General Public Lizenz V3 mit einer Mitteilung lizenziert.
Weitere Informationen finden Sie unter Lizenz.