database - RDF/Triple Stores 是否适合存储应用程序数据? (与图形元数据相反)

标签 database sparql rdf semantic-web schema.org

我正在尝试为“personal information manager”/wiki 类工具创建一个小型 Web 应用程序,我可以在其中以 HTML 片段(或可能是 Markdown)的形式做笔记,并用一些 https://schema.org/ 对其进行注释。微数据并将代码段和元数据存储在某处以供查询。

到目前为止,我的理解是大多数语义数据存储(三元/四元存储,或支持 RDF 的数据库)更适合主要存储和查询元数据。所以我可能还需要某种传统存储(关系、文档存储、键值,甚至非 rdf 图形数据库),我可以在其中存储每个注释的全文,也许还有一些其他位,如 上次访问时间、拥有笔记的user-id等,还执行传统(非语义)全文查询。

我开始寻找可以让我将数据元数据存储在一个地方的商店。我发现了一些:Ontotext GraphDB、Stardog、MarkLogic 等。所有这些似乎都完全符合我的要求,但有一些非常有限的免费许可条款,这真的阻碍了我深入研究它们:我更喜欢研究开放技术我可能会用在真正的产品上。

在深入挖掘之前,我想知道:

  1. 如果我的假设是正确的:我需要使用一个存储区存储数据,另一个存储区存储元数据。
  2. 考虑到我描述的问题,如果有任何涉及免费/开源软件的设置,具有 RDF/Sparql 经验的开发人员可以推荐。

现在我只是倾向于使用 Apache Jena用于 RDF 存储和 SPARQL 查询,以及完全独立于其余数据的东西(最有可能是 PostgreSQL)。

最佳答案

Before digging deeper, I was wondering:

If my assumption is correct: that I'll need to use one store for the data and another for the metadata.

不一定,不,尽管在某些情况下这种区分肯定会有用。但是大多数 RDF 数据库都为数据和元数据提供可扩展的存储。唯一的要求是您的(元)数据表示为 RDF。如果您担心文本查询之类的性能,它们中的大多数都通过 Lucene、Solr 或 Elasticsearch 提供对全文索引的支持。

if there's any setup involving free/open source software that developers with experience in RDF/Sparql can recommend, given the problem I describe.

这真的不是问这个问题的合适地方。工具推荐在 StackOverflow 上被认为是题外话,因为它们会吸引有偏见的答案。但如前所述,有很多工具可供您研究,包括开源/免费和商业工具。我建议您选择一个您喜欢的外观,进行一些试验,或许可以与该特定工具的社区交谈以解释您想要做什么。 Apache Jena 和 Eclipse Rdf4j 是两个流行的开源项目,但还有很多其他项目。

关于database - RDF/Triple Stores 是否适合存储应用程序数据? (与图形元数据相反),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53136167/

相关文章:

SPARQL 为缺失字段生成值

rdf - 导入 DBpedia 的类层次结构

c# - 使用哪个,XMP 还是 RDF?

mysql - 文档管理系统的数据库结构是什么?

php - MySQL时间重叠

sql-server - SQL Server 索引 View

rdf - 在 rdf 文档上运行 SPARQL 时没有结果

javascript - 查找包含最接近 int 值的文档

sparql - 如何将 4 列 N-Quad 四元组导入和查询到 Blazegraph?

neo4j - 如何在 RDF 中表达关于关系的附加信息(时间、概率)?