码迷,mamicode.com
首页 > 其他好文 > 详细

常用RDD

时间:2017-08-10 23:36:42      阅读:314      评论:0      收藏:0      [点我收藏+]

标签:笛卡尔积   image   map   value   hash   为我   groupby   ring   外部程序   

只作为我个人笔记,没有过多解释

Transfor

map

filter  filter之后,依然有三个分区,第二个分区为空,但不会消失

技术分享

 

flatMap

reduceByKey

groupByKey()

sortByKey()

val pets = sc.parallelize(
    List((“cat”, 1), (“dog”, 1), (“cat”, 2))
)
pets.reduceByKey(_ + _) // => {(cat, 3), (dog, 1)}
pets.groupByKey() // => {(cat, Seq(1, 2)), (dog, Seq(1)}
pets.sortByKey() // => {(cat, 1), (cat, 2), (dog, 1)}

mapValues(_ + 1)  mapvalues是忽略掉key,只把value进行操作

技术分享

 

join  RDD[(String, Int)].join(RDD[(String, Long)])   =>  RDD[(String, (Int, Long))]

    join这两个rdd的value类型可以不一样,至于分区是根据hash来指定的

技术分享

 

union

技术分享

cogroup

技术分享

 用 cogroup 实现 join

技术分享

技术分享

sample()  从数据集中采样

cartesian()  求笛卡尔积

pipe()  传入一个外部程序

 

Action

collect()

take(2)

count()

reduce

foreach(println)

 

常用RDD

标签:笛卡尔积   image   map   value   hash   为我   groupby   ring   外部程序   

原文地址:http://www.cnblogs.com/sorco/p/7341755.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!