【问题标题】:Is there a not-relational database for python? [closed]python 有非关系型数据库吗? [关闭]
【发布时间】:2014-06-25 05:18:08
【问题描述】:

我正在搜索类似 sqlite 但不是关系的东西。换句话说,我想使用三重存储(一组宾-谓-主三元组)而不是表。这意味着我想使用 SPARQL 查询而不是 SQL。

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

  1. RDFLib 不是数据库,因此,它不适合与并行进程一起工作(例如,由许多 Web 用户引发的并行请求)。如果两个用户同时尝试在三联存储中添加或删除,可能会导致不一致。
  2. RDFLib 旨在与 RDF 一起使用,RDF 是三重存储的特定实现(语法)。例如,每个宾语、谓语和主语都必须有 URI,而我没有。在我的三联商店中,我希望有这样的三联:("Washington","is capital of", "USA")(所以,没有 URI)。

【问题讨论】:

  • 没有适用于 Python 的 MongoDB 驱动程序吗?
  • @DavidO:MongoDB 不是嵌入式的,它是一个文档存储,而不是一个本体存储。
  • 这是题外话。从最接近的原因来看:“要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是题外话,因为它们往往会吸引固执己见的答案和垃圾邮件。相反,请描述问题和已完成的工作到目前为止解决它。”

标签: python database sparql triplestore non-relational-database


【解决方案1】:

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

我建议以4store 作为后端查看ORDF

【讨论】:

    【解决方案2】:

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

    我还遇到了另一个用 Python 讨论非关系型数据库的线程,虽然它没有特别提到 SPARQL:portable non-relational database

    虽然内容不多,但本 Python SPARQL 开发人员指南有一些建议:http://www.openlinksw.com/blog/~kidehen/?id=1651

    【讨论】:

      猜你喜欢
      • 2010-09-08
      • 1970-01-01
      • 2022-11-10
      • 1970-01-01
      • 2011-04-02
      • 2011-01-14
      • 2011-02-06
      • 1970-01-01
      • 2012-09-23
      相关资源
      最近更新 更多