2

目前,我们使用 Virtuoso 来存储 RDF 三元组。我们想要一种将 RDF 文件加载到数据库的自动化方式。数据可能非常大,所以目前我们是依靠 Virtuoso批量数据加载器来加载数据;但是,将来我们可能会切换到其他一些三联商店,所以我不想依赖这样的特定于平台的解决方案。是否有更通用的跨平台方式将大型 RDF 文件加载到三重存储中?

我们的大部分编程都是在 Python 中完成的,因此最好使用 Python 绑定的解决方案。

我对语义网络技术很陌生,所以如果我的问题不够详细,请告诉我,我会尽力提供更多信息。谢谢!

4

1 回答 1

1

http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtRDFInsert中详细介绍了许多 Virtuoso RDF 插入方法,其中大部分是 Virtuoso 特有的,部分原因是 Virtuoso 独有的功能,如 WebDAV 和 ODS或在其他商店中以不同方式实现或根本没有实现的功能。

在您的情况下,最通用的方法可能是将数据集读入 Python 并使用 SPARQL 1.1 更新(http://www.w3.org/TR/sparql11-update/)命令将数据插入/加载到 Virtuoso 或任何其他支持 SPARQL 1.1 更新的三重商店,我想大多数人现在都会这样做。这种方法的主要缺点是必须在 Python 中管理插入过程,以确保一致地加载数据、处理死锁、回滚等,这将使这种方法变得更慢,并且对于非常大的数据集可能无法忍受。这就是为什么大多数供应商提供他们自己的“批量加载器”方法,其中数据一致性和死锁等在内部处理得更快。

于 2012-11-12T17:39:05.943 回答