首页 > 代码库 > 【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第2节:Spark架构设计(2)

【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第2节:Spark架构设计(2)

三, Spark的RDD

 在Spark中一切都是以RDD为基础和核心的:

技术分享

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

每个RDD的API如下所示:

技术分享

Spark官方文档中给出了的众多的RDD:

 

技术分享

RDD中的操作分为transformations和actions两种:

技术分享

下面举一个例子来说明RDD的使用:

技术分享

另外有两个特殊的RDD:

技术分享

他们都是controlling operations:

技术分享

RDD在执行的时候都是并行的:

技术分享

四, Spark的高容错机制lineage

 

基于DAG图,lineage是轻量级而高效的:

技术分享

操作之间相互具备lineage的关系,每个操作只关心其父操作,各个分片的数据之间互不影响,出现错误的时候只要恢复单个Split的特定部分即可:

 

技术分享

【Spark亚太研究院系列丛书】Spark实战高手之路-第3章Spark架构设计与编程模型第2节:Spark架构设计(2)