开发

社交网络上的质量保证公司
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许可,并发出通知。
有关更多信息,请参见许可证。