Flink 中的 Taskmanager、Task、Slots、Parallelism、CPU 核是啥?

Posted

技术标签:

【中文标题】Flink 中的 Taskmanager、Task、Slots、Parallelism、CPU 核是啥?【英文标题】:What is Taskmanager, Task, Slots, Parallelism, CPU cores in Flink?Flink 中的 Taskmanager、Task、Slots、Parallelism、CPU 核是什么? 【发布时间】:2019-08-26 19:20:36 【问题描述】:

谁能帮我理解Flink应用程序中Task slot、并行度和cpu核心的含义和区别?

另外,如果我有一个包含 1 个主节点和 4 个核心节点的 EMR 集群。每个核心节点都有 4 个 vCore、8 GiB 内存和 EBS 存储:64 GiB。 我的代码中有 7 个平面图函数。 (我没有更改任何默认配置) 我希望有人帮助我了解有多少任务管理器、并行度、任务和任务槽可用于我的工作?

【问题讨论】:

【参考方案1】:

有关定义,请参阅 https://***.com/a/53620443/2000823 和 https://ci.apache.org/projects/flink/flink-docs-release-1.9/concepts/glossary.html

要了解您的特定集群是如何配置的,最简单的方法是查看其web interface。在那里你会找到这样的概述

,您还会找到一个任务管理器列表及其资源,类似于这样

任务槽拥有运行应用程序的一个并行切片的资源;任务槽的总数与集群的最大并行度相同。每个任务管理器有一个插槽,每个任务插槽有一个 CPU 内核是很常见的,但这可以进行不同的配置;我不知道 EMR 默认是什么。

您还应该检查作业图,它看起来像这样

看看它的拓扑是什么样的,以及它的操作符需要什么样的并行度。

【讨论】:

非常感谢 :) @DavidAndersor

以上是关于Flink 中的 Taskmanager、Task、Slots、Parallelism、CPU 核是啥?的主要内容,如果未能解决你的问题,请参考以下文章

Flink1.15源码解析--启动TaskManager

Flink 基础知识

Flink工作原理

Flink源码阅读(11)--- Flink Task重启时机

FLINK重点原理与机制:内存网络流控及反压机制剖析

Flink核心概念