Spark RDD算子与类型
弹性分布式数据集RDD 1.什么是RDD val lines: RDD[String] = sc.textFile("hdfs://hadoop01:9000/da") RDD(Resilient Distributed Dataset)叫做分布式数据集,是Spark中最基本的数据抽象,它代表一个 不可变 、 可分区 、里面的元素 可并行计算 的集合。RDD具有数据流模型的特点:自动容错(RDD父子依赖关系 )、位置感知性调度和可伸缩性。RDD允许用户在执行多个查询时显式地将工作集缓存在内存中,后续的查询能够重用工作集,这极大地提升了查询速度。 2.RDD的属性 * - A list of partitions * - A function for computing each split * - A list of dependencies on other RDDs * - Optionally, a Partitioner for key-value RDDs (e.g. to say that the RDD is hash-partitioned) * - Optionally, a list of preferred locations to compute each split on (e.g. block locations for an HDFS file)