什么是 Apache Flink?
在看 Apache Flink 之前,让我们看一下流处理中的一些基本概念 高效大数据流处理引擎的关键 -
- 保持数据移动(流式架构,如何处理流式事件)
- 声明式访问,例如。流式 SQL、CQL
- 处理缺陷,例如。迟到的事件、缺失的事件、无序的事件。
- 集成批处理和流数据。
- 数据安全性和可用性。(容错,持久状态)
- 自动分区和缩放。
Apache Flink 框架是用 Java 编写的,它提供 -
- Java/Scala/Python 中的几个 API
- 数据集 API - 批处理
- DataStream API - 实时流分析
- 表 API - 关系查询
- DSL(领域特定库)
- CEP - 复杂事件处理
- FlinkML - Flink 的机器学习库
- Gelly - Flink 的图形库
- 用于交互式数据分析的 Shell
Apache Flink 中的一些独特功能 -
- 真正的流媒体功能- 将所有内容作为流执行
- 本机迭代执行- 允许一些循环数据流
- 可变状态的处理
- 自定义内存管理器- 在托管内存上操作
- 基于成本的优化器- 适用于流式处理和批处理
流数据可视化为用户提供实时数据分析,以查看数据中的趋势和模式,从而迅速采取行动。