解密SparkStreaming运行机制和架构
来源:互联网 发布:java 切面 编辑:程序博客网 时间:2024/05/22 14:39
本文主要从五个方面来整体考虑SparkStreaming的机制和架构,如下图:
图中A是action,RDD Graph中有三个Job
首先看到的是RDD的DAG,SparkStreaming在RDD的DAG的基础上加入了时间维度,而RDD的DAG依赖又叫空间维度,Dstream就是在RDD的基础上加上了时间维度,所以整个SparkStreaming就是时空维度。
空间维度:代表的RDD的依赖关系构成的具体的处理逻辑的步骤,是用Dstream来表示的;
时间维度:按照特定时间间隔不断地生成Job的实例并在集群上运行。
随着时间的流逝,产生了不同的RDD Graph依赖关系的实例,因为不同的RDD Graph的依赖关系处理的数据多少以及数据内容不一样,所以Dstream的Graph就是RDD Graph的模板,随着时间不断地把模板实例化,即在时间间隔内用数据去填充模板,变成RDD Graph。动态的Job控制器将流进来的数据根据时间间隔切分,并且按照Dstream模板复制或实例化出RDD DAG的具体实例.
另外,在源码中可以看到DstreamGraph是一个类,Dstream的依赖关系构成了DstreamGraph
DStream随着时间不断地产生RDD,Dstream是逻辑级别的,RDD是物理级别的
private[streaming] var generatedRDDs = new HashMap[Time,RDD[T]]()
DStream的compute需要传入一个时间参数,通过时间获取相应的RDD,然后再对RDD进行计算
/** Method that generates a RDD for the given time */def compute(validTime: Time): Option[RDD[T]]
0 0
- 解密SparkStreaming运行机制和架构
- 解密SparkStreaming运行机制和架构(第二篇)
- 解密SparkStreaming运行机制和架构分析
- 解密SparkStreaming运行机制和架构进阶之Job和容错
- 第2课:解密SparkStreaming运行机制和架构
- 解密SparkStreaming运行机制和架构进阶之Job
- 通过案例对SparkStreaming透彻理解三板斧之二:解密SparkStreaming运行机制和架构进阶之运行机制和架构
- 通过案例对SparkStreaming 透彻理解三板斧之三:解密SparkStreaming运行机制和架构进阶
- SparkStreaming运行机制和架构详解
- 2 SparkStreaming运行机制和架构
- 第3课:SparkStreaming 透彻理解三板斧之三:解密SparkStreaming运行机制和架构进阶之Job和容错
- 通过案例对SparkStreaming 透彻理解三板斧之三:解密SparkStreaming运行机制和架构进阶之Job和容错
- 第3课通过案例对SparkStreaming 透彻理解:解密SparkStreaming运行机制和架构进进阶之Job和容错
- 解密SparkStreaming运行机制和架构进阶之Job和容错(第三篇)
- 第3课:解密SparkStreaming运行机制和架构进阶之Job和容错
- 第3课:通过案例对SparkStreaming 透彻理解三板斧之三:解密SparkStreaming运行机制和架构进阶.
- 第2课:通过案例对SparkStreaming透彻理解三板斧之二:解密SparkStreaming运行机制和架构
- 第3课:通过案例对SparkStreaming 透彻理解三板斧之三:解密SparkStreaming运行机制和架构进阶
- Swift-字符串和字符
- 解决魅族layer-list中图片拉伸的bug
- 在Eclipse中在线安装插件SVN和Android studio中配置SVN的一些坑
- 欢迎使用CSDN-markdown编辑器
- android 自定义view
- 解密SparkStreaming运行机制和架构
- JQuery方法查询
- poj 2420 A Star not a Tree?
- 在编辑框(CEdit)控件上追加内容
- css文件内容格式化
- c/c++ 复习随记(4)----fwqlzz love is for ever
- BZOJ 4522: [Cqoi2016]密钥破解
- inline-block和float应区别对待
- 栈与队列