開發

社交網絡上的質量保證公司
qacompany/qendpointqacompany/qendpoint-wikidataQendpoint是一個具有全文和GEOSPARQL支持的高度可擴展的三重商店。它可以用作獨立的SPARQL端點,也可以用作依賴關係。例如,Qendpoint在Kohesio中使用,其中與UI的每次相互作用都對應於Qendpoint上的基礎SPARQL查詢。 Qendpoint也是Qanswer簽名問題在RDF圖上回答的一部分。
對於後端/基準
對於前端(不強制運行後端)
您可以使用SCOOP軟件包管理器安裝QendPoint。
您需要添加the-qa-company桶,然後您可以安裝qendpoint清單,可以使用這些命令完成
# 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 qendpoint您可以使用Brew Package Manager安裝Qendpoint。
您可以安裝使用此命令
brew install the-qa-company/tap/qendpoint如果您無法訪問Brew或Scoop,則在文件qendpoint-cli.zip下的版本頁面中可用Qendpoint命令行接口。通過提取它,您可以將可以添加到路徑中的bin目錄。
克隆此鏈接的Qendpoint: git clone https://github.com/the-qa-company/qEndpoint.git
移至後端目錄cd qendpoint-backend
使用此命令編譯項目: mvn clean install -DskipTests
使用java -jar target/qendpoint-backend-1.2.3-exec.jar運行項目(替換為最新版本的版本)
您可以將項目用作依賴項(用最新版本替換版本)
<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 install安裝軟件包npm start運行項目可以在此處找到Linux,MacOS和Windows的端點安裝程序,安裝程序不包含命令行(CLI),而僅包含端點。
您可以使用我們的預先配置的Docker圖像之一。
qacompany/qendpointDockerhub :Qacompany/Qendpoint
此Docker映像包含端點,您可以上傳數據集並開始使用它。
您只需要運行圖像,它將通過下載索引並使用以下片段設置存儲庫來準備環境:
docker run -p 1234:1234 --name qendpoint qacompany/qendpoint您還可以通過設置Docker Environnement Value MEM_SIZE來指定分配的內存大小。默認情況下,此值設置為6G。您不應該將此值設置為4G以下,因為使用大數據集將其用完。對於較大的數據集,也建議大數據集有一個更大的值,例如,Wikidata-All至少沒有10克就不會運行。
docker run -p 1234:1234 --name qendpoint --env MEM_SIZE=6G qacompany/qendpoint您可以使用以下命令在任何時候停止容器並將其重新運行(Qendpoint是容器的名稱):
docker stop qendpoint
docker start qendpoint:請注意,由於數據索引的大小,該容器可能會佔據大部分磁盤,因此,如果您不再需要以下命令,請確保刪除容器:
docker rm qendpointqacompany/qendpoint-wikidataDockerhub :Qacompany/Qendpoint-Wikidata
此Docker映像包含一個帶有腳本的端點,以下載包含我們服務器中Wikidata真實語句的索引,因此您只需要等待索引下載並開始使用它即可。
您只需要運行圖像,它將通過下載索引並使用以下代碼設置存儲庫來準備環境:
docker run -p 1234:1234 --name qendpoint-wikidata qacompany/qendpoint-wikidata您還可以通過設置Docker Environnement Value MEM_SIZE來指定分配的內存大小。默認情況下,此值設置為6G,也建議為大數據集使用更大的值,例如,Wikidata-All至少沒有10G。
docker run -p 1234:1234 --name qendpoint-wikidata --env MEM_SIZE=6G qacompany/qendpoint-wikidata您可以使用環境值HDT_BASE指定要下載的數據集,默認值為wikidata_truthy ,但是當前可用值為:
wikidata_truthy wikidata真實陳述(至少需要6G記憶)wikidata_all -wikidata -all語句(至少需要10G內存) docker run -p 1234:1234 --name qendpoint-wikidata --env MEM_SIZE=10G --env HDT_BASE=wikidata_all qacompany/qendpoint-wikidata您可以使用以下代碼在內部維護數據(Qendpoint是容器的名稱)時隨時將其重新運行:
docker stop qendpoint-wikidata
docker start qendpoint-wikidata請注意,由於數據索引的大小,該容器可能會佔據大部分磁盤,因此,如果您不再需要使用命令,請確保刪除容器,如下所示:
docker rm qendpoint-wikidata您可以訪問http:// localhost:1234,其中有一個GUI,您可以在其中編寫sparql查詢並執行它們,並且可以使用http的任何應用程序來運行任何應用程序,例如:
curl -H ' Accept: application/sparql-results+json ' localhost:1234/api/endpoint/sparql --data-urlencode ' query=select * where{ ?s ?p ?o } limit 10 '請注意,第一個查詢將需要一些時間才能將索引映射到內存,稍後它將更快!
大多數結果格式都可以使用,您可以使用:
application/sparql-results+jsonapplication/sparql-results+xmlapplication/x-binary-rdf-results-table您可以使用此命令運行端點:
java -jar endpoint.jar &您可以在後端源中找到應用程序的模板。
如果您的圖表中有HDT文件,則可以將其放在HDT商店目錄中加載端點之前(默認情況下hdt-store/index_dev.hdt )
如果您沒有HDT,則可以在運行端點時通過運行命令將數據集上傳到端點:
curl " http://127.0.0.1:1234/api/endpoint/load " -F " [email protected] " mydataset.nt是要加載的RDF文件,您可以使用RDF4J使用的所有格式。
您可以使用此方法創建SPARQL存儲庫,不要忘記啟動存儲庫
// Create a SPARQL repository
SparqlRepository repository = CompiledSail . compiler (). compileToSparqlRepository ();
// Init the repository
repository . init ();您可以使用executeTupleQuery , executeBooleanQuery , executeGraphQuery或execute執行SPARQL查詢。
// 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" ));
}
}用法後不要忘記關閉存儲庫
// Shutdown the repository (better to release resources)
repository . shutDown ();您可以使用getRepository()方法獲得RDF4J存儲庫。
// get the rdf4j repository (if required)
SailRepository rdf4jRepo = repository . getRepository ();本地運行Qendpoint
cd wikibase
將文件prefixes.sparql移至qendpoint安裝
(重新 - )啟動終點以使用前綴
跑步
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:08Z您可以將參數調整到Wikibase,在這種情況下,我們正在查詢歐盟知識圖,您也可以更改開始時間。
有關擬議功能(以及已知問題)的列表,請參見開放問題。
在以下位置之一與維護者接觸:
如果您想說謝謝或/和支持Qendpoint的積極發展:
首先,感謝您抽出寶貴的時間做出貢獻!貢獻是使開源社區成為學習,啟發和創造的絕佳場所的原因。您所做的任何貢獻都將使其他所有人受益,並受到極大的讚賞。
請閱讀我們的貢獻指南,並感謝您參與!
該存儲庫的原始設置是由QA公司建立的。
有關所有作者和貢獻者的完整列表,請參見貢獻者頁面。
Qendpoint遵循良好的安全性實踐,但無法確保100%的安全性。 Qendpoint提供“原樣”,無需任何保修。自行使用。
有關更多信息並報告安全問題,請參閱我們的安全文件。
該項目已根據GNU通用公共許可證V3許可,並發出通知。
有關更多信息,請參見許可證。