GraphX 实现K-Core
来源:互联网 发布:大唐 数据所 副所长 编辑:程序博客网 时间:2024/06/05 00:26
背景
graphx实现k-core比较简单,参考淘宝技术部之前的文章,已经给出了一个代码片段,基本上改改就可以定制自己的需求了。
code
import org.apache.spark._import org.apache.spark.graphx._import org.apache.spark.storage.StorageLevelimport org.apache.spark.graphx.lib._// load the graphval friendsGraph = GraphLoader.edgeListFile(sc, "data/friends.txt.", false, 512, StorageLevel.MEMORY_ONLY, StorageLevel.DISK_ONLY)var degreeGraph = friendsGraph.outerJoinVertices(friendsGraph.degrees) { (vid, vd, degree) => degree.getOrElse(0)}.cache()val kNum = 200var lastVerticeNum: Long = degreeGraph.numVerticesvar thisVerticeNum: Long = -1var isConverged = falseval maxIter = 10var i = 1while (!isConverged && i <= maxIter) { val subGraph = degreeGraph.subgraph( vpred = (vid, degree) => degree >= kNum ).cache() degreeGraph = subGraph.outerJoinVertices(subGraph.degrees) { (vid, vd, degree) => degree.getOrElse(0) }.cache() thisVerticeNum = degreeGraph.numVertices if (lastVerticeNum == thisVerticeNum) { isConverged = true println("vertice num is " + thisVerticeNum + ", iteration is " + i) } else { println("lastVerticeNum is " + lastVerticeNum + ", thisVerticeNum is " + thisVerticeNum + ", iteration is " + i + ", not converge") lastVerticeNum = thisVerticeNum } i += 1} // do something to degreeGraph
拼的主要是子图的计算速度。
全文完 :)
0 0
- GraphX 实现K-Core
- Spark GraphX实现PageRank
- GraphX Pregel实例实现
- GraphX实现N度关系
- 社区发现算法FastUnfolding的GraphX实现
- 用graphx实现Bronkerbosch计算极大团
- K-Core算法
- K-core, coreness,betweeness
- 基于GraphX实现的community detection算法--Label Propagation分析
- Spark MLlib LDA 基于GraphX实现原理及源码分析
- Spark GraphX实现Bron–Kerbosch算法-极大团问题
- 决胜Spark大数据时代企业级最佳实践:Spark Core&Spark SQL&GraphX&Machine Learning&Best Practice
- Core i7-4770K的详细性能
- GraphX笔记
- 浅谈GraphX
- GraphX PageRank
- 学习GraphX
- Spark GraphX
- UML图
- HDU 4229 Vive la Difference!
- Android Http请求框架二:xUtils 框架网络请求
- STL中 map的用法
- SecureCRT上传、下载文件命令sz与rz用法实例
- GraphX 实现K-Core
- CF 567B(Berland National Library-看成折线图)
- vc屏幕截图实现
- Spring下@Resource, @Autowired和@Inject的区别与联系
- Windows(2003、xp)下配置NTP时间服务器
- C++内存管理
- Android 自定义View (一)
- SPOJ NWERC11E Please, go first
- 第一次去办护照的心得及相关流程