graphx之图迭代
来源:互联网 发布:大数据导论下载 编辑:程序博客网 时间:2024/06/06 01:35
迭代
迭代思想是spark的精髓之一,所谓迭代,即每一步的输出结果作为下一步的输入,因而相邻迭代具有很强的关系。
graphx更是将这种迭代思想运用的灵活高效。
联通分量
通过graphx lib中的ConnectedComponents连通分量算法,简单介绍迭代和消息传播机制。示例见下图:
在完成顶点的初始化后,连通分支开始迭代过程:
为区分顶点自身id与连通分支id,后者称作cid。
1. 发送消息:若点的cid小于邻居顶点cid,则向邻居顶点发送自己的cid
2. 接收消息:若邻居顶点cid小于点cid,会接收到邻居顶点发送给自己的cid
3. 消息合并:选择所有消息中最小cid作为自身新的cid。
上图中,经过两轮迭代,已得到各连通分支,具有相同cid的点属于同一连通分支。
ConnectedComponents剖析
关于联通分量的介绍,以spark2.0中连通分量算法的源码为例:
也许介绍到这里,你多少已理解消息传递过程,以及连通分量是如何实现的;可能对pregel模型并不是很懂;没事,下篇博客会认真梳理pregel迭代模型,希望对你有所帮助
2 0
- graphx之图迭代
- spark-graphx之pagerank
- graphx之pregel模型
- GraphX之PartitionStrategy修改
- Graphx入门之简单pagerank
- spark组件之graphx图并行计算
- Graphx源码解析之SVD++算法
- Spark组件之GraphX学习12--GraphX常见操作汇总SimpleGraphX
- Spark组件之GraphX学习1--入门实例Property Graph
- Spark组件之GraphX学习2--triplets实践
- Spark组件之GraphX学习3--Structural Operators:subgraph
- Spark组件之GraphX学习4--Structural Operators:mask
- Spark组件之GraphX学习8--邻居集合
- Spark组件之GraphX学习11--PageRank例子(PageRankAboutBerkeleyWiki)
- Spark组件之GraphX学习13--ConnectedComponents操作
- Spark组件之GraphX学习14--TriangleCount实例和分析
- Spark组件之GraphX学习20--待学习部分
- Spark组件之GraphX学习16--最短路径ShortestPaths
- hihocoder 1252 2015北京赛区区域赛D
- 51nod 1137 矩阵乘法
- JavaScript 中对变量和函数声明的“提前(hoist)”
- 找出前50个素数,构成素数表
- matlab .p文件
- graphx之图迭代
- java之hashMap和hashTable的区别
- java util :获取国家省份城市工具类
- javascript网页特效——table
- 2016 ICPC 大连网络赛 HDU 5877 Weak Pair
- 飞机游戏3
- HDU 5873 - Football Match【2016大连区域赛网络赛1006】
- stream_context_create() 模拟 POST、GET数据
- 第三周项目1-顺序表的基本运算