对spark中RDD的API的理解

链接:https://www.zybuluo.com/jewes/note/35032

对RDD,和RDD中map,reduce等API的理解


我的理解如下:

RDD:
Resilient Distributed Datasets(弹性分布式数据集)
把所有数据抽象成RDD,可以看做是一个不连续的数组,这样子就可以分区存了。

scala> val a = sc.parallelize(1 to 9, 3)
这样子就可以分布到不同机器==》并行处理了。然后对数据进行操作就是对RDD进行变换。然后输出结果。
但是如何把数据变成RDD之后带来了几个问题。
如何保证运算后的正确性
容错率有多高?
见作者的论文。https://www.cs.berkeley.edu/~matei/papers/2012/nsdi_spark.pdf
map:
将RDD中的每个元素映射到新的RDD中,map中可给一个映射函数,对象是每个元素
但如果不想操作每个元素呢
    出现了mappartitions,按分区操作
    还有mapvalues等
reduce:
讲RDD中两两元素通过输入函数后,变成一个,然后与接下来一个继续运算,直到剩下最后一个元素
变形如:
reduceByKey





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值