【问题标题】:OSGi and Sesame with OWLIMOSGi 和芝麻与 OWLIM
【发布时间】:2012-09-30 00:05:33
【问题描述】:

有没有一种简单的方法可以让 Sesame 和 OWLIM 在 OSGi 环境中工作?还是有另一种快速推断 OWL-Data 并存储它们的方法? 我用内置的推理器、颗粒等尝试了耶拿,但它太慢了。然后我用 OWLIM 尝试了 Sesame,它非常快,但我无法让它与 OSGi 一起工作。 有没有人解决了这个问题?

【问题讨论】:

    标签: web osgi semantics owl sesame


    【解决方案1】:

    我的一位同事目前正在使用 Sesame、OWLIM 和 OSGi。对于 OWLIM,您似乎必须添加额外的 VM 参数。您可以在 OWLIM 网站的新闻部分阅读一些内容,也可以在this PDF 中查找 OSGi 和 SwiftOWLIM。还有一个非常有趣的项目似乎是正确的选择amdatu-semanticweb。不幸的是,没有直接的文档,但是如果您想要现成的 OSGi 组件,amdatu 的项目是一个不错的选择。看看吧,希望对你有帮助。

    但我不推荐使用 VM 参数,因为它们似乎适用于我认为不灵活的绝对路径。

    【讨论】:

      【解决方案2】:

      我不是 OSGi 专家,但 Sesame,至少,is available as an OSGi bundle。虽然我不认为 OWLIM 目前可用,但我知道对此有一些需求,因此直接询问 OWLIM 开发人员(通过他们的支持邮件列表)可能会有所收获。

      【讨论】:

      • 我已经找到了这个,但是没有 OWLIM 我无法进行 OWL 推理。
      • ...是的,这就是为什么我建议您直接与 OWLIM 开发人员联系。
      【解决方案3】:

      OWLIM 对于 Pellet 之类的东西来说速度很快,因为它实现了推理,也就是说,在加载时,它计算所有推理并将它们放入数据库中。因此,当您运行查询时,您只是对数据进行查询,查询时无需进行额外的推理工作。

      在数据不经常更改的情况下,这种急切的推理实现非常合适,但是,在不是这种情况的用例中,维护具体化推理的开销可能是不可接受的。

      硬币的另一面适用于像 Pellet 这样的系统,或其他使用反向链接式推理方法的数据库,负载和数据更改不受推理的影响,但推理工作在查询时完成,这会减慢查询速度。因此,您需要考虑如何计划使用推理来了解哪种方法适合您的需求,这两种方法都不是“正确”的方法。

      我会说,Pellet,第一次查询它时,通常必须做所有艰苦的推理工作......分类,实现,这会使第一次查询非常慢,但是一旦计算出该信息,如果数据没有变化,以后的查询可能会非常高效。

      免责声明,我不知道 OWLIM 是如何工作的,这只是我所知道的有根据的猜测。另外,我意识到这并不能回答您的问题-我不知道将 OSGI 与 OWLIM 或其他数据库一起使用的方法-但认为您的 cmets 值得澄清一下,这太长了,无法放入评论 =)

      【讨论】:

      • 但是当我与 Jena 合作时,会在添加新个体时创建推理。当我执行一些 SPARQL-Query 时,不需要进行推理吗?还是我错了?
      • 我不确定内置的 Jena 推理器是如何工作的,但是对于 Pellet 之类的东西,如果您修改模型,后续查询将需要推理器更新它的状态,所以您会看到在查询时。
      猜你喜欢
      • 1970-01-01
      • 2012-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多