yetang307

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
1. RDD创建有哪几种方法?
通过并行化集合的方式(本地集合转分布式集合)
或者读取数据的方式创建(TextFile\WholeTextFile)
2. RDD分区数如何查看?
通过 getNumPartitions API 查看, 返回值Int
3. Transformation 和 Action的区别?
转换算子的返回值100%是RDD, 而Action算子的返回值100%不是RDD.
转换算子是懒加载的, 只有遇到Action才会执行. Action就是转换算子处理链条的开关.
4. 哪两个Action算子的结果不经过Driver, 直接输出?
foreach 和 saveAsTextFile 直接由Executor执行后输出
不会将结果发送到Driver上去
5. reduceByKey 和 groupByKey的区别?
reduceByKey自带聚合逻辑, groupByKey不带
如果做数据聚合reduceByKey的效率更好, 因为可以先聚合后shuffle再最终聚合, 传输的IO小
6. mapPartitions 和 foreachPartition 的区别?
mapPartitions 带有返回值 foreachPartition不带
7. 对于分区操作有什么要注意的地方?
尽量不要增加分区, 可能破坏内存迭代的计算管道
posted on 2024-01-16 22:29  椰糖  阅读(0)  评论(0编辑  收藏  举报