美文网首页知识图谱
GraphX分布式存储

GraphX分布式存储

作者: 丹之 | 来源:发表于2018-12-02 10:34 被阅读31次

GraphX分布式存储

GraphX将图数据以RDD分布式地存储在集群的节点上,使用顶点RDD(VertexRDD)、边RDD(EdgeRDD)存储顶点集合和边集合。
顶点RDD通过按顶点的ID进行哈希分区,将顶点数据以多分区形式分布在集群上。边RDD按指定的分区策略(Partition Strategy)进行分区(默认使用边的srcId进行哈希分区),将边数据以多分区形式分布在集群上。另外,顶点RDD中还拥有顶点到边RDD分区的路由信息——路由表。路由表存在顶点RDD的分区中,它记录分区内顶点跟所有边RDD分区的关系。在边RDD需要顶点数据时(如构造边三元组),顶点RDD会根据路由表把顶点数据发送至边RDD分区。如图 5所示,按顶点分割方法将图分解后得到顶点RDD、边RDD和路由表(注意,此处RDD未按分区函数分区)。



在图计算过程中,有些边的计算需要顶点数据,即需形成边三元组视图,如PageRank算法生出边的权值,这需要将顶点的权值发送至出边所在的边RDD分区。GraphX依据路由表,从顶点RDD中生成与边RDD分区相对应的重复顶点视图(ReplicatedVertexView),它的作用是作为中间RDD,将顶点数据传送至边RDD分区。重复顶点视图按边RDD分区并携带顶点数据的RDD,如图 6所示,顶点分区A中便携带边RDD分区A中的所有的顶点,它与边RDD中的顶点是co-partition(即分区个数相同,且分区方法相同)。在图计算时,GraphX将重复顶点视图和边RDD进行拉链(zipPartition)操作,即将重复顶点视图和边RDD的分区一一对应地组合起来,从而将边与顶点数据连接起来,使边分区拥有顶点数据。整个形成边三元组过程,只有在顶点RDD形成重复顶点视图中存在分区间数据移动,拉链操作不需要移动顶点数据和边数据。由于顶点数据一般比边数据要少的多,而且随着迭代次数的增加,需要更新的顶点数目也越来越少,重复顶点视图中携带的顶点数据也相应减少,这样就可以大大减少数据的移动量,加快执行速度。
GraphX在顶点RDD和边RDD的分区中以数组形式存储顶点数据和边数据,目的是为了不损失元素访问性能。GraphX在分区里建立了众多索引结构,高效地实现快速访问顶点数据或边数据。在迭代过程中,图的结构不会发生变化,因而顶点RDD、边RDD以及重复顶点视图中的索引结构全部可以重用,当由一个图生成另一个图时,只须更新顶点RDD和RDD的数据存储数组。索引结构的重用,是GraphX保持高性能的关键,也是相对于原生RDD实现图模型性能能够大幅提高的主要原因


相关文章

  • GraphX分布式存储

    GraphX分布式存储 GraphX将图数据以RDD分布式地存储在集群的节点上,使用顶点RDD(VertexRDD...

  • GraphX 学习笔记

    “像顶点一样思考” ​ Spark GraphX是一个分布式图处理框架,Spark GraphX基于Spark平...

  • Spark GraphX

    Spark GraphX GraphX简介 主要特点 演化过程 应用场景 分布式图计算处理技术介绍 下面分别从图数...

  • GraphX与GraphLab、Pregel的对比

    分布式批同步BSP Pregel、GraphLab、GraphX都是基于BSP(Bulk Synchronous ...

  • GraphX构建图的源码详解

    弹性分布式属性图 GraphX的核心抽象是弹性分布式属性图,它是一个有向多重图,带有连接到每个顶点和边的用户定义的...

  • 分布式存储

    认识分布式存储 分布式存储系统,是通过网络将数据分散存储在多台独立的设备上。 分布式存储系统的特性 可扩展分布式存...

  • 分布式存储

    分布式存储 = 单机存储引擎 + 分布式存储架构 news https://github.com/OpenMPDK...

  • Spark GraphX

    Spark GraphX概述 GraphX是Spark的一个组件,专门用来表示图以及进行图的并行计算。GraphX...

  • Graphx 源码剖析-图的生成

    Graphx的实现代码并不多,这得益于Spark RDD niubility的设计。众所周知,在分布式上做图计算需...

  • 分布式存储系统介绍(一)

    分布式存储系统 分布式存储按其存储接口分为三种:文件存储、块存储和对象存储。 1.文件存储 通常支持POSIX接口...

网友评论

    本文标题:GraphX分布式存储

    本文链接:https://www.haomeiwen.com/subject/rifjcqtx.html