1. 当 Flink 执行 executor 会自动根据程序代码生成 DAG 数据流图 2. ActorSystem 创建 Actor 将数据流图发送给 JobManager 中的 Actor 3. JobManager 会不断接收 TaskManager 的心跳消息,从而可以获取到有效的 TaskManager 4. JobManager 通过调度器在 TaskManager 中调度执行 Task (在 Flink 中,最小的调度单元就是 task ,对应就是一个线 程) 5. 在程序运行过程中, task 与 task 之间是可以进行数据传输的 Job Client 主要职责是 提交任务 , 提交后可以结束进程 , 也可以等待结果返回 Job Client 不是 Flink 程序执行的内部部分,但它是任务执行的 起点 。 Job Client 负责接受用户的程序代码,然后创建数据流,将数据流提交给 Job Manager 以便进一步执行。 执 行完成后, Job Client 将结果返回给用户 JobManager 主要职责是调度工作并协调任务做 检查点 集群中至少要有一个 master , master 负责调度 task ,协调 checkpoints 和容错, 高可用设置的话可以有多个 master ,但要保证一个是 leader, 其他是 standby ; Job Manager 包含 Actor System 、 Scheduler 、 CheckPoint 三个重要的组件 JobManager 从客户端接收到任务以后 , 首先生成 优化过的执行计划 , 再调度到 TaskManager 中执行 TaskManager 主要职责是从 JobManager 处接收任务 , 并部署和启动任务 , 接收上游的数据并处理 Task Manager 是在 JVM 中的一个或多个线程中执行任务的工作节点。 TaskManager 在创建之初就设置好了 Slot , 每个 Slot 可以执行一个任务 2.2 flink的用途
阿里在Flink的应用主要包含四个模块:实时监控、实时报表、流数据分析和实时仓库。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)