- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用 Jersey 实现一些 RESTful Web 服务,这些服务通过 Sesame Java API 使用 SPARQL 从 RDF 三重存储访问数据。同时,我想使用 Sesame Server 和 Workbench Web 应用程序在同一个三层存储上运行 SPARQL 端点。我对如何最好地将它们放在一起感到有点困惑。
具体来说,我的 Jersey 应用程序应该使用 Sesame API“直接”连接到三层存储(而 Sesame 服务器应用正在做同样的事情),还是应该通过 Sesame 服务器的 HTTP 接口(interface)(也使用芝麻原料药)。这似乎效率较低,因为它们在同一台机器上,但我不知道两个 Web 应用程序是否应该同时使用三重存储。
最佳答案
不建议直接从两个不同的 java 应用程序访问同一个芝麻商店。 Sesame 的 SAIL(数据库访问层)假定它可以单独控制磁盘上的资源,让两个不同的 JVM 将两个不同的 SAIL 对象应用于相同的资源可能会导致不一致或死锁。所以您应该通过 HTTP 进行设置。虽然这效率较低,但 Sesame 有相当多的优化(自定义二进制序列化等)来加速 HTTP 通信,所以它应该是非常可行的。
另一种方法是扩展 Jersey 应用程序,使其公开您正在使用的(本地)Sesame 存储库以及您自己的 Sesame's REST protocol 实现。 ,包括 SPARQL 端点。如果这样做,您可以从 Workbench 连接到您的 Sesame 商店,而无需在 Sesame 服务器上运行它。
这当然需要更多工作,但如果您自己的应用程序的性能是一个大问题,那么这可能是一个不错的方法。这可能并不像听起来那么难,因为所有功能性的东西(SPARQL 引擎、根据 mime 类型确定正确的格式等)都是由 Sesame 提供的,您“只”需要将它们结合在一起。
但如果我是你的话,我会先尝试第一个选项(与 Jersey 应用程序中的 HTTP 存储库对话):)
关于java - 如何使用 OpenRDF Sesame 以及 Sesame Server 和 Workbench 来实现 Web 服务应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16842204/
我正在尝试创建一个基于 Sesame 的 SPARQL 端点。我安装了 Tomcat、PostgreSQL,并部署了 Sesame 的 Web 应用程序。我创建了一个基于 PostgreSQL RDF
我想使用 Jersey 实现一些 RESTful Web 服务,这些服务通过 Sesame Java API 使用 SPARQL 从 RDF 三重存储访问数据。同时,我想使用 Sesame Serve
有些公共(public)方法像 count() 一样工作,有些我得到“卡住”错误 gem 'rdf', '=0.3.11.1' 需要'rdf' 需要'rdf/芝麻' 需要'rdf/ntriples'
我想将现有 Sesame 存储库中的所有数据复制到新存储库中。我需要迁移,以便在我的三重存储上使用 OWL 推理,这在内存存储库(我现有存储库的类型)中使用 OWLIM 是不可能的。 将所有三元组从存
如何防止我的 OpenRDF Sesame 2.6.5 RDF 存储通过 SPARQL 端点进行修改(插入/删除)? “选择”查询将通过 POST 请求完成。 禁止(通过 Sesame 的 WAR 的
我一直在测试 Sesame 2.7.2,当面对 DESCRIBE 查询不包含空白节点闭包这一事实时,我感到非常惊讶[编辑:正确的术语是 CBD for concise bounded descript
我是 SPIN 的新手,我阅读了文档并查阅了一些示例,但我想开始使用它。 我从 http://topquadrant.com 看到了一些工具对于 SPIN,但我已经使用 openrdf-sesame
我使用 Sesame 通过 SPARQL 查询 RDF。我处理大文件(2GB、10GB)并随后执行多个查询。在处理如此大的文件时,我收到错误java.lang.OutOfMemoryError:Jav
我之前使用的是 FUSEKI,现在改为 OpenRDF/Sesame。 一切正常,我只有一个问题。在一种方法中,我需要取回模型中存储库的完整数据库。该方法如下所示: private static
我不会确切地说它是有限的,但只要我能看到给出的建议是那种“如果你需要超越它,你可以改变后端存储......”。为什么?为什么芝麻在超过 150-200 米三元组时不如说 OWLIM 或 Allegrg
我有一些关于芝麻三元组的数据。当我使用 GUI 查询它时,无论查询多少次,返回的三元组序列都保持不变。当我以编程方式尝试相同的事情时,序列不断变化(尽管结果是相同的)。有人可以解释为什么会出现这种情况
假设 (s,p,o) 和列表,我想使用 Sesame 中的模型结构并检查是否可以使用主语 s、谓词列表并在末尾到达 o。 例如我们说有一条路径,如果对于(s,p,o)和{p1,p2,p3},存在以下三
我在 OS X 10.8 上的 Tomcat 7 中使用 booth Sesame .wars,但现在它不再工作了。我用两个新的 Sesame .war 设置了一个新的 Tomcat,但现在它使用旧的
我正在尝试使用 Sesame 存储库来存储我的本体。我想编写 JAVA 代码来加载此本体或仅对其运行查询以添加新的个体、属性等。但似乎 SeRQL 不提供更新操作。是否有一些 API 可以让我这样做?
我正在研究 Java 芝麻。在教程之后,我从一个非常小的例子开始。我正在尝试构建一个如代码所示的简单语句。我的问题是我不知道如何打印出该语句的主语或宾语。谁能帮我解决这个问题?这是我的代码: publ
我在 java 中有以下代码通过后端数据库 (postgreSQL) 查询 SPARQL 查询。 import rdfProcessing.RDFRepository; import java.io.
我正在使用 Sesame 作为三重存储;我想将三元组保存在 MySQL 数据库中。在 sesame 2.6.10 中,我在 WEB-INF\lib\文件夹中添加了 mysql-connector-ja
我正在用 Java 编写一个程序来使用 Sesame 的服务,但是当我调用登录时: @Override protected void doPost(HttpServletRequest request
我需要实现一个简单的java应用程序来在Seasame上执行一些查询。我想一开始尝试一些简单的事情,但我无法初始化存储库。我遵循官方指南,我的程序如下所示: public class Hello
我正在尝试使用 SPARQL 和 Sesame 2.7 查询存储库,但是当我运行我的代码时,出现以下错误 org.openrdf.http.client.SesameHTTPClient - Serv
我是一名优秀的程序员,十分优秀!