图数据库:TinkerPop / Blueprints与W3C关联数据

时间:2012-06-27 07:18:27

标签: semantic-web graph-databases

寻找异构(多节点类型(多模式),多边缘类型(多关系)和多个描述特征(多功能))网络的网络分析基础设施,我注意到有两个图数据库世界中的标准堆栈:

一方面我们有ThinkPop/Blueprint property graph model。它受Neo4jOrientDB GraphDBDexTitanInfiniteGraph等支持。

Tinkerpop堆栈包括Blueprint属性图模型界面,Gremlin图遍历语言和Furnace图算法包。

另一方面我们有W3C's Linked Data technology stackAllegroGraph4storeOracle Database Semantic TechnologiesOWLIM支持, SYSTap BigData等等。

语义数据使用RDF / RDFS / OWL表示,可以使用SPARQL进行查询。最重要的是rules和{{3}能力。

现在,假设我想在图形数据库中表示异构数据,并分析这些数据(统计,关系发现,结构,演化等)(我知道这些术语广泛而模糊) - 什么各种类型的网络分析任务的每个模型的相对优势?这两个模型是否相互补充?

1 个答案:

答案 0 :(得分:7)

一些事情,您的链接数据堆栈的样本都是三重存储。您可以通过首先设置三元组来开始构建链接数据应用程序,但是调用数据库链接数据堆栈是不正确的。这也是三重商店的不完整列表,还有SesameJenaMulgaraStardog。 Sesame和Jena是双重职责,它们是语义Web的两个事实上的标准Java API,但它们都提供了与API捆绑在一起的三重存储。我也知道Cray和IBM都在研究三重商店,但我现在也不太了解。我知道Stardog与TinkerPop堆栈配合得很好,它基本上是一个插件,并开始针对RDF编写Gremlin查询。

我认为RDF / OWL的优势在于你1)获得真正的查询语言2)他们是w3c 标准和3)你得到推理,如果三重商店支持它,免费(或多或少 - 你仍然需要写一个本体论。)

以RDF / OWL / SPARQL为标准,如果您需要,它可以很容易地获取并移动到具有不同功能集的新三元店,您的数据已经采用每个人都能理解的通用格式编码为查询的应用程序逻辑完全可移植。在大多数情况下,您将针对Sesame或Jena API编写代码,或者使用SPARQL协议,因此您可能只需要更改config / init。我认为这是早期原型制作阶段的一大胜利。

我还认为RDF / OWL特别结合w /推理和您可以使用新SPARQL 1.1创建的复杂SPARQL查询的类型,非常适合构建复杂的分析应用程序。此外,我认为大多数人认为RDF三重商店不能扩展的印象不再正确。此时,大多数三重商店很容易扩展到数十亿的三元组,并且具有非常有竞争力的吞吐量数字。

因此,基于我认为您可能会做的事情,我认为semweb对您来说可能是更好的选择。几年前我使用RDF& amp;做了类似的项目。由简单的基于Pylons的webapp所支持的后端的RDFS,对结果非常满意。