Унифицированный движок аналитики для распределённой обработки больших данных с API для Scala, Java, Python и R.
apache/flink
Apache Flink — open source-фреймворк для потоковой и пакетной обработки данных с состоянием, предоставляющий API для Java, Scala, Python и SQL.
- Звёзды
- 26,417
- Форки
- 14,065
- Открытые issues
- 398
- Последний коммит
- 16 часов назад
Что это?
Apache Flink — распределённый фреймворк для запуска конвейеров обработки данных, работающих как с непрерывными потоками событий, так и с ограниченными наборами данных. Его среда выполнения рассматривает пакетную обработку как частный случай потоковой, поэтому оба типа задач выполняет один и тот же движок.
DataStream API поддерживает обработку по времени событий и события, поступающие не по порядку, а также гибкую группировку в окна по времени, количеству элементов, сессиям или пользовательским триггерам. Отказоустойчивость основана на гарантиях обработки ровно один раз, а обратное давление естественным образом распространяется по потоковым задачам.
Flink интегрируется с экосистемой Hadoop, включая YARN и HDFS. Большинство коннекторов проекта — Kafka, JDBC, Elasticsearch и другие — поддерживаются в отдельных репозиториях Apache. Проект собирается с помощью Maven и поддерживает Java 11, 17 и 21.
Ключевые возможности
- 01Среда выполнения, ориентированная прежде всего на потоки, но способная выполнять и пакетные задачи
- 02Обработка по времени событий и событий, поступающих не по порядку, в DataStream API
- 03Гибкая группировка в окна по времени, количеству элементов, сессиям или пользовательским триггерам
- 04Гарантии отказоустойчивости с обработкой ровно один раз
- 05Слои совместимости с Hadoop MapReduce и интеграция с YARN и HDFS
Сценарии использования
- Аналитика в реальном времени по потокам событий, например кликам или данным датчиков
- Непрерывные ETL-конвейеры для передачи данных в хранилища данных или поисковые индексы
- Пакетные и потоковые задачи, использующие общую кодовую базу
- Приложения, управляемые событиями и работающие с состоянием, которым нужны результаты с гарантией обработки ровно один раз
Быстрый старт
- 1
Клонируйте репозиторий
git clone https://github.com/apache/flink.git - 2
Перейдите в каталог проекта
cd flink - 3
Соберите Flink для Java 17 (по умолчанию)
./mvnw clean package -DskipTests -Djdk17 -Pjava17-target
Что важно знать
- Сборка из исходного кода занимает около 10 минут и требует Maven 3.9.16 и JDK версии 11, 17 или 21.
- Большинство коннекторов перенесено в отдельные репозитории, поэтому их нужно добавлять по отдельности.
В подборках
Темы
Частые вопросы
- Что такое flink?
- Apache Flink — open source-фреймворк для потоковой и пакетной обработки данных с состоянием, предоставляющий API для Java, Scala, Python и SQL. Apache Flink — распределённый фреймворк для запуска конвейеров обработки данных, работающих как с непрерывными потоками событий, так и с ограниченными наборами данных. Его среда выполнения рассматривает пакетную обработку как частный случай потоковой, поэтому оба типа задач выполняет один и тот же движок.
- flink можно использовать бесплатно? Какая у него лицензия?
- flink распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- flink всё ещё поддерживается?
- Активно поддерживается. Последний коммит в flink — 22 окт. 2026 г..
- Для чего можно использовать flink?
- Аналитика в реальном времени по потокам событий, например кликам или данным датчиков Непрерывные ETL-конвейеры для передачи данных в хранилища данных или поисковые индексы Пакетные и потоковые задачи, использующие общую кодовую базу Приложения, управляемые событиями и работающие с состоянием, которым нужны результаты с гарантией обработки ровно один раз
- Как установить flink?
- Клонируйте репозиторий: git clone https://github.com/apache/flink.git Перейдите в каталог проекта: cd flink Соберите Flink для Java 17 (по умолчанию): ./mvnw clean package -DskipTests -Djdk17 -Pjava17-target
- Где скачать flink?
- Исходный код и инструкции по установке — на GitHub: https://github.com/apache/flink
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Python-фреймворк ETL для потоковой обработки, аналитики в реальном времени, LLM-пайплайнов и RAG на базе движка на Rust.
Механизм потоковой обработки данных на Rust: выполняет SQL-запросы, Python UDF и шаги ML/LLM над потоками реального времени из Kafka, MQTT, NATS и других источников.
Распределённое OLAP-хранилище для аналитики с низкой задержкой по потоковым и пакетным данным, поступающим из Kafka и S3.
Querybook — IDE для работы с Big Data, объединяющая редактор запросов в формате ноутбука с метаданными таблиц для поиска и обмена аналитикой.
Простое настольное приложение для Windows, позволяющее просматривать файлы Apache Parquet и выполнять к ним базовые SQL-запросы.