spark streaming与流处理
This commit is contained in:
@ -35,7 +35,7 @@ Hadoop采用HDFS存储数据,采用MapReduce处理数据。MapReduce主要是
|
||||
|
||||
#### 1.3 Storm 与 Spark Streaming对比
|
||||
|
||||
严格意义上说Spark Streaming并不是实时计算框架。 Spark Streaming接收实时输入的数据流,并将数据拆分为批处理,由Spark引擎处理后批量生成结果流。只不过 Spark Streaming 能够将数据流按秒级进行拆分,使得其能够得到接近于流处理的效果,但其本质上还是批处理(或微批处理)。
|
||||
Spark Streaming并不是真正意义上的流处理框架。 Spark Streaming接收实时输入的数据流,并将数据拆分为批处理,由Spark引擎处理后批量生成结果流。只不过 Spark Streaming 能够将数据流进行极小粒度的拆分,使得其能够得到接近于流处理的效果,但其本质上还是批处理(或微批处理)。
|
||||
|
||||
<div align="center"> <img src="https://github.com/heibaiying/BigData-Notes/blob/master/pictures/streaming-flow.png"/> </div>
|
||||
|
||||
@ -46,9 +46,9 @@ storm和Flink都是真正意义上的实时计算框架。其对比如下:
|
||||
| | storm | flink |
|
||||
| -------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
|
||||
| 状态管理 | 无状态 | 有状态 |
|
||||
| 窗口支持 | 对事件窗口支持较弱,缓存整个窗口的所有数据,窗口结束时一起计算 | 窗口支持较为完善,自带一些窗口聚合方法,并且会自动管理窗口状态 |
|
||||
| 消息投递 | At Least Once | Exactly Once |
|
||||
| 容错方式 | ACK机制:对每个消息进行全链路跟踪,失败或者超时时候进行重发 | 检查点机制:通过分布式一致性快照机制,对数据流和算子状态进行保存。在发生错误时,使系统能够进行回滚。 |
|
||||
| 窗口支持 | 对事件窗口支持较弱,缓存整个窗口的所有数据,窗口结束时一起计算 | 窗口支持较为完善,自带一些窗口聚合方法,<br>并且会自动管理窗口状态 |
|
||||
| 消息投递 | At Most Once<br/>At Least Once | At Most Once<br/>At Least Once<br/>**Exactly Once** |
|
||||
| 容错方式 | ACK机制:对每个消息进行全链路跟踪,失败或者超时时候进行重发 | 检查点机制:通过分布式一致性快照机制,<br/>对数据流和算子状态进行保存。在发生错误时,使系统能够进行回滚。 |
|
||||
|
||||
|
||||
> 注 : 一般来说,对于消息投递,一般有以下三种方案:
|
||||
|
Reference in New Issue
Block a user