Apache Flink的数据流编程模型在有限和无限数据集上提供单次事件(event-at-a-time)处理。在基础层面,Flink程序由流和转换组成。
Apache Flink的API:有界或无界数据流的数据流API、用于有界数据集的数据集API、表API。 [3]
数据流的运行流程
Flink程序在执行后被映射到流数据流,每个Flink数据流以一个或多个源(数据输入,例如消息队列或文件系统)开始,并以一个或多个接收器(数据输出,如消息队列、文件系统或数据库等)结束。Flink可以对流执行任意数量的变换,这些流可以被编排为有向无环数据流图,允许应用程序分支和合并数据流。
Flink的数据源和接收器
Flink提供现成的源和接收连接器,包括Apache Kafka、Amazon Kinesis、HDFS和Apache Cassandra等。
Flink程序可以作为集群内的分布式系统运行,也可以以独立模式或在YARN、Mesos、基于Docker的环境和其他资源管理框架下进行部署。
1、在服务器创建/data/flink目录
mkdir -p /data/flink
2、docker-compose.yml脚本创建
vim /data/flink/docker-compose.yml
version: "2.1"
services:
jobmanager:
image: flink:1.14
expose:
- "6123"
ports:
- "8081:8081"
command: jobmanager
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
taskmanager:
image: flink:1.14
expose:
- "6121"
- "6122"
depends_on:
- jobmanager
command: taskmanager
links:
- "jobmanager:jobmanager"
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
3、启动flink
(1)后台运行 一 > 一般推荐生产环境下使用该选项。
docker-compose up -d
(2)前台运行 一 > 控制台将会同时打印所有容器的输出信息,可以很方便进行调试。
docker-compose up
4、浏览器上查看页面dashboard
http://IP:8081
版权归原作者 苏书QAQ 所有, 如有侵权,请联系我们删除。