当前位置:网站首页>Detailed explanation of Flink operation architecture
Detailed explanation of Flink operation architecture
2022-07-24 10:42:00 【InfoQ】
1. Flink Program structure

Map / FlatMap / Filter / KeyBy / Reduce / Fold / Aggregations / Window / WindowAll / Union / Window join / Split / Select2. Flink Parallel data stream

3. Task and Operator chain

4. Task scheduling and execution

- When Flink perform executor It will automatically generate... According to the program code DAG Data flow diagram ;
- ActorSystem establish Actor Send the data flow diagram to JobManager Medium Actor;
- JobManager Will continue to receive TaskManager The heartbeats of , Thus, effective TaskManager;
- JobManager Through the scheduler TaskManager Scheduling execution Task( stay Flink in , The smallest scheduling unit is task, The corresponding is a thread );
- While the program is running ,task And task Data can be transmitted between .
- The main responsibility is to submit tasks , After submission, the process can be ended , You can also wait for the result to return ;
- Job Client No Flink The internal part of program execution , But it's the starting point for task execution ;
- Job Client Responsible for receiving user's program code , Then create the data stream , Submit the data stream to Job Manager In order to carry out further . After execution ,Job Client Return the result to the user .
- The main responsibility is to schedule work and coordinate tasks to do checkpoints ;
- At least one in the cluster master,master Responsible for scheduling task, Coordinate checkpoints And fault tolerance ;
- High availability settings can have more than one master, But make sure one is leader, The others are standby;
- Job Manager contain Actor System、Scheduler、CheckPoint Three important components ;
- JobManager After receiving the task from the client , First, an optimized execution plan is generated , Reschedule to TaskManager In the implementation of .
- The main responsibility is to start from JobManager Mission reception , And deploy and start tasks , Receive upstream data and process ;
- Task Manager Is in JVM The work node in one or more threads of ;
- TaskManager Set it up at the beginning of creation Slot, Every Slot Can perform a task .
5. Task slot and slot sharing

1) Task slot
- TaskManager The tasks that can be executed concurrently at most are controllable , That's it 3 individual , Because it can't be more than slot The number of .
- slot Have exclusive memory space , This is in a TaskManager Multiple different jobs can be run in , Not affected between jobs .
2) Slot sharing
- Just calculate Job Medium maximum parallelism (parallelism) Of task slot, As long as this is satisfied , Other job Can also be satisfied .
- More equitable distribution of resources , If you have more free slot More tasks can be assigned to it . If there is no task slot sharing in the figure , Low load Source/Map etc. subtask Will occupy a lot of resources , Windows with higher loads subtask There will be a lack of resources .
- With task slot sharing , The basic parallelism can be (base parallelism) from 2 Upgrade to 6. The utilization rate of slotted resources is improved . At the same time, it can also ensure TaskManager to subtask The distribution of slot The scheme is more equitable .

边栏推荐
- 常量指针、指针常量
- Distributed transaction processing scheme big PK!
- 协议圣经-谈端口和四元组
- 每日三题 7.21
- [dish of learning notes dog learning C] detailed operator
- What does resource pooling and resource pooling mean?
- [dish of learning notes dog learning C] initial level of pointer
- 《nlp入门+实战:第二章:pytorch的入门使用 》
- MySQL - 普通索引
- JS function call download file link
猜你喜欢

563页(30万字)智慧化工园区(一期)总体设计方案

PC Museum (2) 1972 hp-9830a

分布式事务处理方案大 PK!

PC博物馆(1) 1970年 Datapoint 2000

N-tree, page_ Size, database strict mode modification, and the difference between delete and drop in the database

Call bind apply simple summary

Windows virtual machine security reinforcement process steps, detailed description of windows setting security policy, detailed description of win7 setting IP security policy, windows setting firewall

机器学习小试(10)使用Qt与Tensorflow创建CNN/FNN测试环境

How to gracefully realize idempotency and distributed current limiting of distributed interfaces (glory Collection Edition)

cookie sessionStorage localStorage 区别
随机推荐
MySQL - 唯一索引
跨平台音频播放库
QT create application tray and related functions
基于NoCode构建简历编辑器
Adobe substance 3D Designer 2021 software installation package download and installation tutorial
Chapter V Modification implementation (impl) class
ECCV 2022 | 清华提出首个嵌入光谱稀疏性的Transformer
New:Bryntum Grid 5.1.0 Crack
WEB安全基础 - - -文件上传(文件上传绕过)
实时天气API
ECCV 2022 | Tsinghua proposes the first transformer to embed spectral sparsity
PostgreSQL rounding
N-tree, page_ Size, database strict mode modification, and the difference between delete and drop in the database
图像处理:RGB565转RGB888
Erlang learning 02
In depth analysis of common cross end technology stacks of app
MySQL - 全文索引
zoj-Swordfish-2022-5-6
[electronic device note 4] inductance parameters and type selection
What is NFT? How to develop NFT system?