一、产生背景
- 实时数据处理所带来的价值远远大于离线处理
- 一个优秀的流处理引擎标准要求
- 低延迟、高吞吐量、容错性、窗口时间语义化、编程效率高、运行效果好等
- strom/jstorm
- 优点:低延迟
- 缺点:其他方面都差一些
sparkstreaming
由Apache软件基金会开发的开源流处理框架
- 核心由Java和Scala编写的
应用与对有界和无界的数据流进行有状态的计算
可以在所有常见的集群环境中运行,以内存速度和任何规模进行计算。
-
3、应用场景
-
4、代码实现
实现方式
- Java API
- Scala API
- 统一数据处理过程抽象
- 将实时和批处理均抽象成三个过程:Source->Transform->Sink
- Source为数据源读入
- Transform为数据处理转化
- Siuk为数据接收器,数据落地到存储层
- 代码实现复杂度
- Flink早期就收到阿里的认可,并进行二次开发,名为Blink。
- Blink主要优化再用户体验方面,比如SQL、UI等
- 在2019年反馈给Flink,并以Flink为主进行开发
- 学习使用的是1.13.1