全部产品
云市场

基本介绍

更新时间:2018-12-29 11:24:42

什么是GraphDB?

GraphDB是一个图形数据库。现阶段主打OLTP能力,可以使用spark graphframes拓展图分析能力。您可以在数据库中创建,查询和修改许多图形。GraphDB基于Apache Tinkerpop栈构建,并使用Gremlin语言进行遍历,更新和查询。

什么是图表?

图形是一组顶点,它们之间有边。顶点是图的基本单位,代表了一些不可分割的对象。实际上,这可能是一个人,位置或对象。它可以具有描述对象的属性。

边是两个顶点之间的连接,表示它们之间的关系。它可以具有多重性,方向性和属性。

在非图数据库中,实体之间的关系是数据库的辅助功能,通过字段中的外键表示或通过JOIN创建。这意味着顺着关系遍历可能需要多个查询或应用程序来组合一般的查询达到目的。

在图形数据库中,关系是数据模型的主要组成部分,从顶点到边遍历到顶点以及更远是查询模型中数据的主要机制。这使得图形数据库更适合于涉及诸如“所有喜欢乐队X且拥有朋友,或朋友的朋友,购买品牌Y”的人的关系的查询。

在GraphDB中,每个图形都有一个唯一的名称。要创建,打开,修改和查询图形,请使用Gremlin语言。Gremlin查询由可以某种方式操纵或遍历图形以提供所需结果的命令组成。

顶点

顶点是表示对象的图元素。在顶点创建时,它具有由图形引擎设置的标识符和用户定义的标签。顶点可以另外存储可以索引和查询的属性。阅读有关如何创建,查询和其他顶点实现细节的更多信息,请参阅Tinkerpop / Gremlin文档

边是表示关系的图元素。为了创建边,用户提供传入/传出顶点和标签。边将由图形引擎分配标识符。边可以另外存储可以索引和查询的属性。阅读有关如何创建边的查询和其他实现细节的更多信息,请参阅Tinkerpop / Gremlin文档

属性

属性是一个键:值对,用于描述,命名或与边或顶点关联。边和顶点都可以具有多个属性。例如,如果顶点是’human’类型,我们可以将属性分配给’name’和’age’的顶点。

可以对属性建立索引,以便可以通过其属性检索顶点和边,例如获取具有相同名称的所有顶点。

边的属性可以是“权重”之类的东西,因此通过多个不同加权边的顶点的图遍历可以具有计算的行程总权重。

遍历

遍历是分析图形结构的过程。遍历是进程发现并返回有关边,顶点及其属性的信息。要了解不同的遍历步骤和算法,请参阅 Tinkerpop/Gremlin documentation on traversal

Gremlin

Gremlin有两个部分:语言和server。

Gremlin语言是一种图形遍历语言,用于交互和查询图形。

Gremlin server是处理本地或远程Gremlin语言查询的服务器的规范。它的实现是Apache Tinkerpop的一部分。

要执行Gremlin语言查询,请将Gremlin查询发送到相应的Gremlin server。

Apache TinkerPop

Apache TinkerPop是一个开源的图形计算框架。TinkerPop是将数据建模为图形并与Gremlin语言命令交互以创建,遍历和操作图形的系统。要了解有关这些部分如何组合在一起的更多信息,请参阅TinkerPop / Gremlin文档图系统集成部分。