Spark核心RDD
1).RDD(Resilient Distributed Dateset),弹性分布式数据集。Spark底层操作数据都是基于RDD。
2).RDD五大特性:
a).RDD由一系列Partition组成。
b).函数(算子)是作用在partition上的。
c).RDD之间有依赖关系。
d).分区器是作用在K,V格式的RDD上。
e).partition提供最佳计算位置,利于处理数据的本地化。符合“计算移动,数据不移动”
3).注意:
a).sc.textFile(...)读取HDFS中文件的方法,底层调用的是MR读取HDFS中文件的方法,首先会split,每个split大小默认
与一个block大小相同,每个split与RDD中的一个partition对应。
b).什么是K,V格式的RDD?
RDD中元素是一个个的tuple2 二元组,这个RDD就是K,V格式的RDD。
c).哪里体现了RDD的弹性(容错)?
i).RDD之间有依赖关系
ii).partition个数可多可少。
d).哪里体现了RDD的分布式?
partition是分布在多个节点上的。