1、功能特性
- 支持streaming流处理、batch批处理
- 容错:提供有状态的计算,记录数据的处理状态,基于chandy-lamport算法实现分布式一致性快照,提供一致性语义
- 可伸缩:一个集群支持上千个节点
- 高吞吐、低延迟
2、架构
- deploy层:部署层,flink支持本地、集群和云服务器
- core层:为api层提供服务,提供支持flink计算的全部核心实现
- api&libraries:提供面向流处理、批处理的api;以及机器学习、图形处理等扩展库
3、常见实时框架对比
模型 | 一致性 | 容错机制 | 延时/吞吐量 | |
---|---|---|---|---|
Storm | Native(数据进入立即处理) | at-lease-once(至少一次) | record ack | 低/低 |
Spark Streaming | Micro-batching | exactly-once | rdd checkpoint | 中/高 |
Flink | Native | exactly-once | checkpoint(snapshot) | 高/高 |
4、flink基本组件
- datasource:主要用来接收数据
- transform:算子,对数据进行加工处理,比如map、reduce、filter、aggregation、
- datasink:数据输出组件,主要用来保存数据到其他介质中