spark graphx实现共同好友的聚合
spark graphx是一款优秀的图计算框架,对于批量计算图计算借助于spark的计算引擎,实现数据的快速聚合。
对于最基本的 共同好友推荐可以很方便的实现,一下为实现代码:
数据源的数据格式:
1 2
2 4
。。。
package mobimport org.apache.spark.graphx.{GraphLoader, VertexRDD} import org.apache.spark.{SparkConf, SparkContext}object GraphRale {/** * 数据列表的笛卡尔乘积:{1,2,3,4}=>{(1,2),(1,3),(1,4),(2,3),(2,4),(3,4)} * @param input * @return */ def ciculate(input:List[Long]):Set[String]={var result = Set[String]()input.foreach(x=>{input.foreach(y=>{if(x<y){result += s"${x}|${y}" }else if(x>y){result += s"${y}|${x}" }})})return result; }def twoDegree()={val conf = new SparkConf().setMaster("local").setAppName("graph")val sc = new SparkContext(conf)val graph = GraphLoader.edgeListFile(sc,"D:\\grap.txt")val relate: VertexRDD[List[Long]] = graph.aggregateMessages[List[Long]](triplet=>{triplet.sendToDst(List(triplet.srcId))}, (a,b)=>(a++b)).filter(x=>x._2.length>1)val re = relate.flatMap(x=>{for{temp <- ciculate(x._2)}yield (temp,1)}).reduceByKey(_+_)re.foreach(println(_))}def main(args: Array[String]): Unit = {twoDegree()} }
spark graphx实现共同好友的聚合相关推荐
- Spark GraphX 聚合操作
package Spark_GraphXimport org.apache.spark.{SparkConf, SparkContext} import org.apache.spark.graphx ...
- 快刀初试:Spark GraphX在淘宝的实践
(本文由团队中梧苇和我一起撰写,并由团队中的林岳,岩岫,世仪等多人Review,发表于程序员的8月刊,由于篇幅原因,略作删减,本文为完整版) 对于网络科学而言,世间万物都可以抽象成点,而事物之间的关系 ...
- 明风:分布式图计算的平台Spark GraphX 在淘宝的实践
快刀初试:Spark GraphX在淘宝的实践 作者:明风 (本文由团队中梧苇和我一起撰写,并由团队中的林岳,岩岫,世仪等多人Review,发表于程序员的8月刊,由于篇幅原因,略作删减,本文为完整版) ...
- Spark GraphX图计算入门
一.什么是图计算 图计算,可以简单理解为以图这种数据结构为基础,整合相关算法来实现对应应用的计算模型.社交网络中人与人之间的关系,如果用计算机数据结构表示,最合适的就是图了.其中图的顶点表示社交中的人 ...
- Spark GraphX在淘宝的实践
原文链接:http://rec-sys.net/forum.php?mod=viewthread&tid=398 由于Spark GraphX性能良好,又有丰富的功能和运算符,能在海量数据上自 ...
- Spark GraphX学习笔记
概述 GraphX是 Spark中用于图(如Web-Graphs and Social Networks)和图并行计算(如 PageRank and Collaborative Filtering)的 ...
- Spark GraphX 图算法的理解
Spark GraphX是一个分布式图处理框架,基于 Pregel 接口实现了常用的图算法.包括 PageRank.SVDPlusPlus.TriangleCount. ConnectedCompon ...
- Spark—GraphX编程指南
GraphX编程指南 GraphX 是新的图形和图像并行计算的Spark API.从整理上看,GraphX 通过引入 弹性分布式属性图(Resilient Distributed Property G ...
- 用Spark GraphX进行图计算(详细步骤)
SimpleGraphX 1.1 创建文件夹(10.103.105.63) spark-3.1.1-bin-hadoop2.7/Test/ mkdir graphx cd graphx mkdir s ...
最新文章
- 三十六亿的《哪吒》历时五年,如何用AI解决动画创作难题?
- vs2010文件加载使用简体中文(GB2312)问题解决方案
- 【转】iphone - ios app maximum memory budget
- 2021-11-14Iterator迭代器
- Nginx 配置从零开始
- Android使用腾讯浏览服务X5内核
- 一个单片机的小问题。
- [tensorflow] - csv文件读取
- 休眠后gpio状态_浅谈Digi XBee模块的休眠模式
- Firefox搜索框:自动出现添加搜索的提示
- LeetCode(1051)——高度检查器(JavaScript)
- 2012春季ACM内部测试赛3
- Maven常见异常及解决方法---测试代码编译错误
- 由古书看,古人应该知道地球是圆的
- 10个linux awk文本处理经典案例,Linux awk命令常用案例
- Jmeter之BeanShell详解
- Proteus十字路口交通灯
- 从零开始开发Python程序(五)—— 把文字排版成一张图片
- 电信专家王煜全:手机监管面临三大困境
- xmpp学习使用简单介绍(二)