随笔分类 -  spark

摘要:直接上代码: 其中sortResult方法里对Traversable[(K,V)]类型的集合使用了reduceByKey方法,这个方法是自行封装的,使用时需要导入,代码如下: 阅读全文
posted @ 2017-01-20 18:00 一人浅醉- 阅读(2692) 评论(0) 推荐(0)
摘要:Pregel是个强大的基于图的迭代算法,也是Spark中的一个迭代应用aggregateMessage的典型案例,用它可以在图中方便的迭代计算,如最短路径、关键路径、n度关系等。然而对于之前对图计算接触不多的童鞋来说,这个api还算是一个比较重量组的接口,不太容易理解。 Spark中的Pregel定义如下: def pregel[A: ClassTag]( initialMsg: A,... 阅读全文
posted @ 2017-01-19 17:36 一人浅醉- 阅读(3359) 评论(0) 推荐(0)
摘要:关系计算问题描述 二度关系是指用户与用户通过关注者为桥梁发现到的关注者之间的关系。目前微博通过二度关系实现了潜在用户的推荐。用户的一度关系包含了关注、好友两种类型,二度关系则得到关注的关注、关注的好友、好友的关注、好友的好友四种类型。 如果要为全站亿级用户根据二度关系和四种桥梁类型推荐桥梁权重最高 TopN 个用户,大致估算了下总关系量在千亿级别,按照原有的 Mapreduce 模式计算整个二度关... 阅读全文
posted @ 2017-01-17 11:38 一人浅醉- 阅读(3950) 评论(1) 推荐(0)
摘要:参考: https://github.com/JerryLead/SparkInternals/blob/master/markdown/english/5-Architecture.md?winzoom=1 相关文献: 《Spark源码分析之Storage模块》 《详细探究Spark的shuffl 阅读全文
posted @ 2017-01-17 11:37 一人浅醉- 阅读(300) 评论(0) 推荐(0)
摘要:RDD 优点: 编译时类型安全编译时就能检查出类型错误 面向对象的编程风格直接通过类名点的方式来操作数据 缺点: 序列化和反序列化的性能开销无论是集群间的通信, 还是IO操作都需要对对象的结构和数据进行序列化和反序列化. GC的性能开销频繁的创建和销毁对象, 势必会增加GCimport org.apache.spark.sql.SQLContext import org.apache.sp... 阅读全文
posted @ 2016-12-14 20:11 一人浅醉- 阅读(1441) 评论(0) 推荐(0)
摘要:图的集合视图 图信息接口 缓存方法 节点与边的变换操作 修改图结构操作 图join操作 在邻边上聚合信息 VertexRDD与RDD有一个明显的区别是,VertexRDD的key不重复,而RDD的key可以重复 aggregateUsingIndex函数的作用类似于reduceByKey,如vert 阅读全文
posted @ 2016-12-13 19:05 一人浅醉- 阅读(2273) 评论(0) 推荐(0)
摘要:问题: 参考:Spark快速入门指南 – Spark安装与基础使用 阅读全文
posted @ 2016-11-27 01:27 一人浅醉- 阅读(179) 评论(0) 推荐(0)
摘要:参考文档 阅读全文
posted @ 2016-11-19 20:15 一人浅醉- 阅读(153) 评论(0) 推荐(0)
摘要:问题导读1.GraphX提供了几种方式从RDD或者磁盘上的顶点和边集合构造图?2.PageRank算法在图中发挥什么作用?3.三角形计数算法的作用是什么?Spark中文手册-编程指南Spark之一个快速的例子Spark之基本概念Spark之基本概念Spark之基本概念(2)Spark之基本概念(3)Spark-sql由入门到精通Spark-sql由入门到精通续spark GraphX编程指南(1)... 阅读全文
posted @ 2016-11-08 17:44 一人浅醉- 阅读(965) 评论(0) 推荐(0)