Database 为什么图形数据库不如图形处理框架那么多?

Database 为什么图形数据库不如图形处理框架那么多?,database,graph,Database,Graph,对于图形数据库,特别是那些活动和分布式的数据库,我知道一些,但不多。比如orientdb、Titan、Dex等 关于图形处理框架,有大量的工具,如graphx、graph lab、powergraph、xstream、pregel等,每年都有更多的工具问世 有人能告诉我这两类工具之间的区别吗?它们可以交换吗?为什么图形数据库没有作为图形处理框架引起足够的重视?图形数据库和图形处理框架之间的区别在于,数据库是以图形的基本形式保存数据的,其中数据之间的关系是用边建立的,数据点是用节点/顶点建立的。一

对于图形数据库,特别是那些活动和分布式的数据库,我知道一些,但不多。比如orientdb、Titan、Dex等

关于图形处理框架,有大量的工具,如graphx、graph lab、powergraph、xstream、pregel等,每年都有更多的工具问世


有人能告诉我这两类工具之间的区别吗?它们可以交换吗?为什么图形数据库没有作为图形处理框架引起足够的重视?

图形数据库和图形处理框架之间的区别在于,数据库是以图形的基本形式保存数据的,其中数据之间的关系是用边建立的,数据点是用节点/顶点建立的。一些数据库(如OrientDB)大大扩展了这一基本概念,使数据库更加通用。其他人则没有那么多才多艺。虽然一般来说,主要目标是将数据持久化为类似于图的形式、边和顶点

另一方面,在图形处理框架中,它们获取一组数据并从数据中构建分析图。目标主要是分析数据中类似图形的模式或结构

据我所知,我将试着用一个类比来解释这一点

假设你有一个装满潘趣酒(你的数据)的潘趣酒碗

在图形数据库场景中,冲床已经是一个图形,您可以查看碗中的所有内容并对其进行分析

有了一个图形处理框架,你也会有一个装满东西的打孔机碗,但它是模糊的,你不能直接在里面看到任何图形。要得到某种类型的图形,首先必须用勺子舀出一些冲头,比如说,一个“图形处理勺子”。这使您能够看到某种图形一致性,具体取决于您选择的尝试和分析数据的算法。当然,根据您的机器或系统,如Spark,图形处理包可能很大,甚至与整个冲压碗一样大,甚至更大

尽管如此,从冲压(数据)中生成“合理的图形”仍需要时间和处理。另一件事是,如果你想储存这个新发现的勺子,你必须有另一个碗把它放进去。而且,如果你把勺子掉在地板上,你的图形数据就不见了。这不会发生在图形数据库中

我希望这是有道理的


Scott

图形数据库和图形处理框架之间的区别在于,构建数据库是为了以图形的基本形式保存数据,其中数据之间的关系是用边构建的,数据点是用节点/顶点构建的。一些数据库(如OrientDB)大大扩展了这一基本概念,使数据库更加通用。其他人则没有那么多才多艺。虽然一般来说,主要目标是将数据持久化为类似于图的形式、边和顶点

另一方面,在图形处理框架中,它们获取一组数据并从数据中构建分析图。目标主要是分析数据中类似图形的模式或结构

据我所知,我将试着用一个类比来解释这一点

假设你有一个装满潘趣酒(你的数据)的潘趣酒碗

在图形数据库场景中,冲床已经是一个图形,您可以查看碗中的所有内容并对其进行分析

有了一个图形处理框架,你也会有一个装满东西的打孔机碗,但它是模糊的,你不能直接在里面看到任何图形。要得到某种类型的图形,首先必须用勺子舀出一些冲头,比如说,一个“图形处理勺子”。这使您能够看到某种图形一致性,具体取决于您选择的尝试和分析数据的算法。当然,根据您的机器或系统,如Spark,图形处理包可能很大,甚至与整个冲压碗一样大,甚至更大

尽管如此,从冲压(数据)中生成“合理的图形”仍需要时间和处理。另一件事是,如果你想储存这个新发现的勺子,你必须有另一个碗把它放进去。而且,如果你把勺子掉在地板上,你的图形数据就不见了。这不会发生在图形数据库中

我希望这是有道理的


Scott

图形数据库和图形计算之间存在连接和隔离

连接: 图形数据库不仅提供数据存储,还提供一系列的图形数据处理,如寻找解决SSSP问题所需的图形遍历和计算,这些都必须得到图形处理框架的支持

隔离: 对于大多数的图计算,比如PageRank、贪婪图着色,您不能使用图数据库,因为作为一个基本的存储和查询系统,图数据库不需要具备执行计算任务的能力


如果我错了,请纠正我,我也是图形计算的新生。

图形数据库和图形计算之间存在连接和隔离

连接: 图形数据库不仅提供数据存储,还提供一系列的图形数据处理,如寻找解决SSSP问题所需的图形遍历和计算,这些都必须得到图形处理框架的支持

隔离: 对于大多数的图计算,比如PageRank、贪婪图着色,您不能使用图数据库,因为作为一个基本的存储和查询系统,图数据库不需要具备执行计算任务的能力


如果我错了,请纠正我,我也是图形计算的新生。

谢谢!这是一个很好的类比,可以帮助我清楚地了解它们的区别。从您的示例中,我觉得graph数据库更通用,甚至可以直接对数据运行分析,那么为什么graph proc