首页 文章

是否有一个 not-relational 数据库的 python? [1]

提问于
浏览
1

我正在搜索 sqlite 之类的东西,但是 not-relational。换句话说,我想使用 triple-store(一组 object-predicate-subject 三元组)而不是表格。这意味着我想使用 SPARQL 查询而不是 SQL。

想到的第一个想法是 RDFLib。但是,我发现此选项存在两个问题:

  • RDFLib 不是数据库,因此,它不适用于并行进程(例如,由许多 web-users 引起的并行请求)。如果两个用户同时尝试添加或删除 triple-store,则可能导致不一致。

  • RDFLib 旨在与 RDF 一起使用,RDF 是 triple-store 的特定实现(语法)。例如,每个对象,谓词和主题都必须有 URI,而我没有它们。在我的 triple-store 中,我希望有这样的三元组:("Washington","is capital of", "USA")(所以,没有 URI)。

2 回答

  • 1

    SPARQL 明确用于 RDF;如果你想使用它,你需要创建自己的本体或利用现有的本体。

    我建议看一下ORDF4store作为 back-end。

  • 1

    正如评论者已经说过的,SPARQL 有一个包装器接口 - Python 的 SPARQL 端点接口(当前版本为 1.6.0):http://rdflib.github.io/sparqlwrapper/

    我还遇到了另一个用 Python 讨论 non-relational 数据库的线程,虽然没有特别提到 SPARQL:便携式 non-relational 数据库

    虽然它没有很多东西,但 Python SPARQL 开发人员的这本指南有一些指示:http://www.openlinksw.com/blog/~kidehen /?id=1651

相关问题