当前位置: 首页 > news >正文

Flink运行时架构以及核心概念

1.运行构架

1.提交作业后启动一个客户端进程,客户端解析参数(-d -t 等等),后进行封装由Actor通信系统提交,取消,更新任务给JobManager。

2.JobManager(进程)通信系统一个组件叫分发器,分发器会启动并提交应用给JobMaster(线程类似于spark里的driver)JobMaster向资源管理器请求资源,资源管理器就会对TaskManager要资源。

3.资源管理器要资源,TaskManager通过通讯走网络把TaskSlot(任务槽)给JobMaster,JobMaster把任务分发出去让TaskManager开始执行任务,最后就是状态更新返回状态结果。

4.一个job对应一个jobmaster

2.核心概念

2.1并行度(Parallelism)

把一个算子操作,复制多份到多个节点。每个算子可以包含多个子任务,子任务在不同的线程,物理机或者容器中完成就是并行度。

2.2算子链

并行度相同的一对一算子操作,可以直接链接在一起形成一个大的任务,每一个这样的任务被一个线程执行,这样的技术被称为算子链。下面原先两个进程合并成一个就不用再跨线程,提高了效率。默认时开启的

2.3任务槽(Task Slots)

用来运行子任务(task)的,将TaskManager分成多份内存。

每个任务槽表示TaskManager拥有计算机的一个固定大小的子集。

http://www.lryc.cn/news/482767.html

相关文章:

  • 用 Python 从零开始创建神经网络(五):损失函数(Loss Functions)计算网络误差
  • [CKS] K8S RuntimeClass SetUp
  • 【Python爬虫实战】轻量级爬虫利器:DrissionPage之SessionPage与WebPage模块详解
  • 计算机网络-2.1物理层
  • 纯血鸿蒙系统 HarmonyOS NEXT自动化测试实践
  • C 语言标准库 - <errno.h>
  • Golang自带的测试库testing的使用
  • 29.电影院售票系统(基于springboot和vue的Java项目)
  • 大学生就业平台微信小程序
  • Redis 缓存击穿
  • 初探鸿蒙:从概念到实践
  • PHP API的路由设计思路
  • 工程师 - 如何访问Github
  • 222. 完全二叉树的节点个数 迭代
  • 中心极限定理的三种形式
  • React Native 全栈开发实战班 - 导航栈定制
  • 扬州BGP高防服务器可以给企业带来哪些好处?
  • 题目讲解15 合并两个排序的链表
  • leetcode92:反转链表||
  • arkUI:遍历数据数组动态渲染(forEach)
  • js中import引入一个export值可以被修改。vue,react
  • PDF24:多功能 PDF 工具使用指南
  • 域名解析线路类型有哪几种
  • Spring资源加载模块,原来XML就这,活该被注解踩在脚下 手写Spring第六篇了
  • [运维][Nginx]Nginx学习(2/5)-Nginx高级
  • 【快捷入门笔记】mysql基本操作大全-SQL数据库
  • 【LeetCode】【算法】15. 三数之和
  • 传输协议设计与牧村摆动(Makimoto‘s Wave)
  • JMeter进阶篇
  • LabVIEW编程基础教学(一)--介绍