RDD
RDD(Resilient Distributed Datasets)是Apache Spark中的核心抽象,是分布式数据集的集合。Spark中所有的计算都基于RDD。
RDD具有以下特点:
分布式:RDD是分布式数据集,可以在集群中多台机器上分布式存储和计算。
不可变性:RDD是不可变的,一旦创建,就不能改变其数据。只能通过一些操作(如map,filter,reduce等)生成新的RDD。
分区性:RDD可以划分为多个分区,每个分区可以在不同的节点上被处理。
容错性:如果一个节点失效,RDD的操作可以重新计算该节点,保证数据的一致性。
丰富的操作:Spark对RDD提供了丰富的操作,包括转换(如map,filter等)和动作(如reduce,collect等)。
记忆化:Spark会缓存RDD的计算结果,以便重用。
在Spark程序中,所有的操作都最终转换为RDD的操作。使用Spark编程就是使用RDD编程。