其他分享
首页 > 其他分享> > GraphX 学习笔记

GraphX 学习笔记

作者:互联网

不错的link

 


        Spark GraphX是一个分布式图处理框架,Spark GraphX基于Spark平台提供对图计算和图挖掘简洁易用的而丰富多彩的接口,极大的方便了大家对分布式图处理的需求。Spark GraphX由于底层是基于Spark来处理的,所以天然就是一个分布式的图处理系统。图的分布式或者并行处理其实是把这张图拆分成很多的子图,然后我们分别对这些子图进行计算,计算的时候可以分别迭代进行分阶段的计算,即对图进行并行计算。

       设计GraphX时,点分割和GAS都已成熟,在设计和编码中针对它们进行了优化,并在功能和性能之间寻找最佳的平衡点。如同Spark本身,每个子模块都有一个核心抽象。GraphX的核心抽象是Resilient Distributed Property Graph,一种点和边都带属性的有向多重图。它扩展了Spark RDD的抽象,有Table和Graph两种视图,而只需要一份物理存储。两种视图都有自己独有的操作符,从而获得了灵活操作和执行效率。

相关知识

GraphX基础

类成员

       在GraphX中,图的基础类为Garph,它包含两个RDD:一个为边RDD,另一个为顶点RDD。可以用给定的边RDD和顶点RDD构建一个图。一旦构建好图,就可以用edges()和vertices()来访问边和顶点的集合。VD和ED代表了用户自定义的顶点和边类,对应的图是参数化类型的泛类型Graph[VD,ED]。GraphX中图必须要有顶点和边属性。GraphX中Vertice和Edge持有VerticeId值,而不是顶点的引用。图在集群中是分布式存储的,不属于单个JVM,因此一条边的顶点可能在不同的集群节点上。

GraphX实例

 

参考资料

 

标签:triplet,val,graph,笔记,学习,RDD,._,GraphX,id
来源: https://blog.51cto.com/u_14582976/2829401