目录
1 连续事件处理的目标
流处理应该具备什么样的特点
低延迟、高吞吐、容错性(能够处理中断,保证 exactly-once)
2 流处理技术的演变
在flink出来之前是什么技术
Storm(低延迟但是故障发生时不能准确处理计算状态)、Spark Streaming(高吞吐和容错性,但是牺牲了低延迟和实时处理能力)
Storm是怎么样的,有什么问题
1 流处理先锋
2 可以做到低延迟,很难实现高吞吐、不能保证 exactly-once
Lambda 架构
1 lambda架构可以做到既保证低延迟,又保障正确性
2 通过批量 MapReduce 作业提供了虽有些延迟但是结果准确的计算,同时Storm 将最新数据的计算结果初步展示出来
Spark Streaming 是如何处理数据的
把连续事件中的流数据分割成一系列微小的批量作业。如果分割得足够小(即所谓的微批处理作业,计算就几乎可以实现真正的流处理
3 初探Flink
flink来源于什么项目
起源于 Stratosphere 项目
flink的名字由来
flink在德语中表示快速和灵巧
flink包含些什么
1 Flink Runtime 执行引擎
2 面向流处理的接口(DataStream API)和面向批处理的接口(DataSet API)
3 机器学习(FlinkML)复杂事件处理(CEP),图计算(Gelly),Table API
flink的数据处理观
flink 将批处理(即处理有限的静态数据)视作一种特殊的流处理。
flink的特点
1 能够在成百上千台机器上运行,大型的计算任务分成许多小的部分,每个机器执行一个部分
2 发生故障时计算也能持续计算
3 使用了容错性数据流
4 保证了 exactly-once语义和基于事件时间的数据窗口
4 参考
《Flink基础教程》
如果你觉得文章还可以,欢迎点赞,评论,转发,收藏,关注哦!!