是否有任何自由猫头鹰推理器可以推理无需将所有数据加载到内存中?

Wan*_*iqi 5 inference owl jena

我使用Jena和TDB存储RDF,我想对它做一些推断.但是RDF数据很大,而Jena的owl推理器必须将所有数据加载到内存中.所以我想找一个可以推理无需将所有数据加载到内存中的推理器,有没有?

cas*_*gna 2

如果您准备采用 OWL 的子集,您可以以流处理方式执行一些操作,而无需将所有 RDF 数据加载到内存中,这将具体化所有推断的三元组。

举个例子,看看 RIOT 的 infer 命令:

源代码在这里:

采用 RIOT 的推断并将其与 MapReduce 之类的并行运行是很简单的,示例如下:

另一种不同的方法是使用 MapReduce 应用 RDFS 和 OWL ter Horst 规则并具体化所有派生语句:

也许,您可以查看 OWL 中您感兴趣的部分,并检查是否可以以流式传输方式完成。如果是这样,您可以采用 RIOT 的推断并扩展它,添加您感兴趣的 OWL 部分。这将是对 Apache Jena 的一个很好的贡献(如果您想这样做,请在 jena-dev 邮件列表上联系) 。

WebPIE 是一个聪明而有趣的项目,但正如您所看到的,有点复杂,它是一个研究项目(从长期支持和维护的角度来看,这意味着所有这些)。然而,如果您想要/需要的是 OWL ter Horst,WebPIE 就可以。如果其他人有兴趣使用它,您甚至可以付出努力,分叉 WebPIE 并将其贡献给开源项目。

您可能还有兴趣看看 Ymris(但它目前正在睡觉...... zzzzz):