RDD(Resilient Distributed Dateset) 弹性分布式数据集
RDD不存数据, partition也是不存数据的
RDD 五大特性
1、RDD 是有由一系列partition 组成的 – 从hdfs 读取多少个block 就有 多少个 partition
2、算子(函数)是作用在partition 上的
3、RDD之间有依赖关系 – RDD2丢了 可以从RDD1 生成
4、分区器作用在K,V 格式的RDD上
5、partition 提供数据最佳的计算位置,利于数据处理本地化,“计算移动,数据不移动”
RDD3 如果没了 可以从 RDD2 生成
也就是 RDD3依赖于RDD2 RDD2 依赖于RDD1
问题:
1、什么是K,V格式的RDD?
RDD中的数据 是一个个的tuple2,这个RDD就是K,V格式的RDD
2、sc.textFile(…)底层实际上调用的是MR读取HDFS问阿金的方法,首先会split(切片),每一个split大小与一个block相同,这里的split对应的RDD的一个partition
3、哪里体现了RDD的弹性(容错)?
1)RDD之间有依赖关系
2)RDD的partition个数可多可少
4、哪里体现了RDD的分布式?
partition是分布在多个节点的