Apache Flink — это среда обработки в реальном времени, которая может обрабатывать потоковые данные. Это среда обработки потоков с открытым исходным кодом для высокопроизводительных, масштабируемых и точных приложений реального времени. Он имеет истинную потоковую модель и не принимает входные данные в виде пакетов или микропакетов.
Apache Flink был основан компанией Data Artisans и теперь разрабатывается под лицензией Apache от Apache Flink Community. В этом сообществе более 479 участников и 15500 + коммитов.
Экосистема на Apache Flink
На приведенной ниже диаграмме показаны различные уровни экосистемы Apache Flink —
Место хранения
Apache Flink имеет несколько опций, откуда он может читать / записывать данные. Ниже приведен основной список хранения —
- HDFS (распределенная файловая система Hadoop)
- Локальная файловая система
- S3
- СУБД (MySQL, Oracle, MS SQL и т. Д.)
- MongoDB
- HBase
- Апач Кафка
- Apache Flume
развертывание
Вы можете развернуть Apache Fink в локальном режиме, режиме кластера или в облаке. Кластерный режим может быть автономным, YARN, MESOS.
В облаке Flink может быть развернут на AWS или GCP.
ядро
Это уровень времени выполнения, который обеспечивает распределенную обработку, отказоустойчивость, надежность, возможность итеративной обработки и многое другое.
API и библиотеки
Это верхний слой и самый важный слой Apache Flink. Он имеет Dataset API, который заботится о пакетной обработке, и Datastream API, который заботится о потоковой обработке. Есть и другие библиотеки, такие как Flink ML (для машинного обучения), Gelly (для обработки графиков), таблицы для SQL. Этот уровень предоставляет разнообразные возможности Apache Flink.