Spark Streaming揭秘 Day2-五大核心特征
Spark Streaming揭秘 Day2
五大核心特征
引子
书接上回,Streaming更像Spark上的一个应用程序,会有多个Job的配合,是最复杂的Spark应用程序。让我们先从特征角度进行理解。
特征1:逻辑管理
DStream是对RDD封装的集合,作用于DStream的操作会对其中每个RDD进行作用,DStream Graph就是RDD Graph的模板,其逻辑管理完全继承RDD的DAG关系。
特征2:时间管理
Spark Streaming的最大特征是引入了时间属性,DStream在RDD的基础上增加了时间纬度,随着时间的纬度,不断把模板实例化,通过动态Job控制器运行作业。
特征3:流式输入和输出
以InputStream和OutputStream为核心,进行流式的数据输入输出。
特征4:高容错
具体Job运行在Spark Cluster之上,此时系统容错就至关重要。主要思路:
- 限流
- 根据需要调整资源安排
特征5:事务处理
在处理出现崩溃的情况下确保Exactly once的事务语义。主要通过检查点等技术实现。
透析
DStream是逻辑级别的,RDD是物理级别的,随着时间的流逝,对每个Batch Interval产生RDD进行Transform操作,进而产生了DAG依赖关系,Job Scheduler通过时间调度,根据DAG关系将作业发布到Spark集群上去运行,不断产生Spark作业。
欲知后事如何,且听下回分解
DT大数据每天晚上20:00YY频道现场授课频道68917580