【发布时间】:2014-09-16 16:58:41
【问题描述】:
我使用 tinkerpop 蓝图创建了一个 SAIL 对象,以将 RDF 数据加载到 Graph 数据库中。我已经成功地加载了数据。有问题的 Graph 数据库没有 sparql 端点来运行我的查询混合测试驱动程序。有谁知道它是否可能,如果可能,那么如何使我的测试驱动程序 java 代码可以通过 HTTP 服务器访问 sparql 端点?我知道 4store、BigData 和其他一些商店有自己的内置 sparql 服务器用于查询。我想知道如果底层图形数据库不提供自己的服务器实现,是否可以为我的 Sail 对象存储提供类似的 sparql 服务器。
提前致谢。
这是我的进步:
我已经通过 tomcat 部署了 open-rdf sesame war 来访问服务器,这就是我准备存储库的过程(数据已经加载)
OrientGraph g = new OrientGraph("remote:host/Test", "admin", "admin");
Sail sail = new GraphSail<KeyIndexableGraph>(g);
Repository rep = new SailRepository(sail);
rep.initialize();
RepositoryConnection conn = rep.getConnection();
我不知道如何处理查询,在一个单独的文件中我使用:https://github.com/tinkerpop/blueprints/wiki/Sail-Ouplementation 进行了一些基本查询。
但是,我注意到使用它完成的查询非常有限,因为只有与边缘匹配的基本模式是可能的。
例如,带有如下谓词的基本查询: 选择不同的 ?var1 ?var2 where { ?var2 predicate ?var1 .}
如果我也提供主题, 选择不同的 ?var1 where { 主谓词 ?var1 .}
即使我可以在文件中看到相应的结果,也不返回任何结果。
我的问题是如何运行完整的 sparql 查询?端点会有帮助吗?
【问题讨论】:
-
SAIL 是 Sesame 架构中的中间层。您需要做的就是将 SAIL 包装在 Sesame Repository 中,然后通过 Sesame Server 应用程序公开该 Repositiroy 以使其具有 SPARQL 端点。
-
嗨!我知道这真的很旧,但我想尝试这个选项,问题是我不太确定从哪里开始,我已经掌握了一些主题来学习如何将风帆包装到芝麻存储库中,但我仍然找不到有关如何通过端点访问它的信息。您是否知道有关如何执行此过程的任何好的示例/链接?
-
你(至少我认为是你)也在 sesame-users 列表(见groups.google.com/d/msg/sesame-users/QAx3BaOfKwo/6dZYeZrSDCAJ)上发布了同样的问题,我在那里提供了相当广泛的答案。
标签: rdf sparql graph-databases sparqlwrapper tinkerpop-blueprint