面向大规模数据处理的统一分析引擎,提供 Scala、Java、Python 和 R 接口。
apache/flink
Apache Flink 是开源的流处理与批处理框架,支持 Java、Scala、Python 和 SQL 接口。
- Star
- 26,417
- Fork
- 14,065
- 未关闭 Issue
- 398
- 最近提交
- 16小时前
这是什么?
Apache Flink 是一个分布式数据处理框架,既能处理持续不断的事件流,也能处理有界数据集。其运行时将批处理视为流处理的特例,同一套引擎可以同时承载两类任务。
它的 DataStream API 支持事件时间语义和乱序事件处理,窗口可按时间、数量、会话或自定义触发器划分。容错机制基于精确一次(exactly-once)的处理保证,流作业中的背压也会自然传递。
Flink 可与 YARN、HDFS 等 Hadoop 生态组件集成。Kafka、JDBC、Elasticsearch 等大部分连接器已拆分到 Apache 旗下的独立仓库中维护。项目使用 Maven 构建,支持 Java 11、17 和 21。
核心功能
- 01以流为核心的运行时,同时支持批处理作业
- 02DataStream API 支持事件时间和乱序事件处理
- 03窗口可按时间、数量、会话或自定义触发器划分
- 04提供精确一次(exactly-once)的容错保证
- 05兼容 Hadoop MapReduce,并可与 YARN、HDFS 集成
适用场景
- 对点击流、传感器等事件流做实时分析
- 构建持续运行的 ETL 管道,向数据仓库或搜索索引写入数据
- 用同一套代码同时编写批处理和流处理任务
- 需要精确一次结果的有状态事件驱动应用
快速上手
- 1
克隆代码仓库
git clone https://github.com/apache/flink.git - 2
进入项目目录
cd flink - 3
为 Java 17(默认)构建 Flink
./mvnw clean package -DskipTests -Djdk17 -Pjava17-target
使用前须知
- 从源码构建约需 10 分钟,并需要 Maven 3.9.16 以及 JDK 11、17 或 21 版本。
- 大多数连接器已迁移到独立仓库,需要单独添加。
收录于专题
标签
常见问题
- flink 是什么?
- Apache Flink 是开源的流处理与批处理框架,支持 Java、Scala、Python 和 SQL 接口。 Apache Flink 是一个分布式数据处理框架,既能处理持续不断的事件流,也能处理有界数据集。其运行时将批处理视为流处理的特例,同一套引擎可以同时承载两类任务。
- flink 可以免费使用吗?用的什么许可证?
- flink 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- flink 还在维护吗?
- 活跃维护中。flink 最近一次提交是在 2026年10月22日。
- flink 适合用来做什么?
- 对点击流、传感器等事件流做实时分析 构建持续运行的 ETL 管道,向数据仓库或搜索索引写入数据 用同一套代码同时编写批处理和流处理任务 需要精确一次结果的有状态事件驱动应用
- flink 怎么安装和运行?
- 克隆代码仓库: git clone https://github.com/apache/flink.git 进入项目目录: cd flink 为 Java 17(默认)构建 Flink: ./mvnw clean package -DskipTests -Djdk17 -Pjava17-target
- 在哪里获取 flink?
- 源代码和安装说明在 GitHub 上:https://github.com/apache/flink
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
4.4万2.9万ScalaApache-2.0更新于 4小时前
基于 Rust 引擎的 Python ETL 框架,用于流处理、实时分析、LLM 管道和 RAG。
6.2万1680PythonOther更新于 3天前
基于 Rust 的流式数据处理引擎,可对 Kafka、MQTT、NATS 等来源的实时数据执行 SQL、Python 函数和 AI 推理。
131447RustApache-2.0更新于 12小时前
面向低延迟实时分析的分布式 OLAP 数据存储,可接入 Kafka 流数据和 S3 等批量数据。
61651524JavaApache-2.0更新于 8小时前
Querybook 是一款大数据 IDE,将笔记本式查询编辑器与表元数据结合,用于发现、创建和分享数据分析。
2297305TypeScriptApache-2.0更新于 上个月
一款简单的 Windows 桌面应用,用于查看 Apache Parquet 文件并执行基础 SQL 查询。
1249136C#GPL-3.0更新于 6天前