什么是RDD?

顾名思义,从字面理解RDD就是 Resillient Distributed Dataset,即弹性分布式数据集。mysql

它是Spark提供的核心抽象。sql

RDD在抽象上来说是一种抽象的分布式的数据集。它是被分区的,每一个分区分布在集群中的不一样的节点上。从而能够让数据进行并行的计算数组

它主要特色就是弹性和容错性。分布式

弹性:RDD的数据默认状况下存放在内存中的,可是在内存资源不足时,Spark会自动将RDD数据写入磁盘工具

容错性:RDD能够自动从节点失败中恢复过来。即若是某个节点上的RDD partition,由于节点故障,致使数据丢了,那么RDD会自动经过本身的数据来源从新计算该partition。oop

RDD来源:一般是Hadoop的HDFS,Hive 表等等;也能够经过Linux的本地文件;应用程序中的数组;jdbc(mysql 等);也能够是kafka、flume数据采集工具、中间件等转化而来的RDD。中间件

相关文章
相关标签/搜索