1.RDD定义:弹性分布式数据集,是spark中最基本的数据抽象,代表一个不可变、可分区、里面的元素可并行计算的集合
2.RDD五大特性
A list of partitions:RDD是有分区的
A function for computing each split:计算方法会做用到每一个分片(分区)之上
A list of dependencies on other RDDs:RDD之间是有相互依赖关系的
Optionally,a pqrtitioner for key-value RDDs(e.g. to say that the RDD is hash-partitioned):kv型RDD可以有分区器
Optionally ,a list of preferred location to compute each split on (e.g. block location for an HDFS file ):RDD分区数据的读取会尽量靠近数据所在地
3.A list of partitions:RDD是有分区的
rdd的分区时rdd数据存储的最小单位
一份rdd数据,本质上时分隔成了多个分区
4.A function for computing each split:计算方法会做用到每一个分片(分区)之上
5.Optionally,a pqrtitioner for key-value RDDs(e.g. to say that the RDD is hash-partitioned):kv型RDD可以有分区器
默认分区器:hash分区规则,可以手动设置一个分区器
key-value rdd:rdd中国存储的时二元元组,这就是key-value型rdd
二元元组:只有两个元素的元组
6.如何正确理解rdd
弹性分布式数据集,分布式计算的实现载体