gpt4 book ai didi

apache-spark - Spark中执行器和容器的区别

转载 作者:行者123 更新时间:2023-12-04 13:21:33 24 4
gpt4 key购买 nike

我试图清楚地了解在 yarn 管理的集群中内存分配是如何发生的。我知道有一堆执行者(一个执行者有自己的 JVM),一个执行者在执行期间可以有一个或多个 vcores。

我试图在 YARN 配置中结合这一理解,其中事物被隔离为容器。每个容器实际上是一些 Vcor​​es 和堆内存的一部分的混合。

有人可以确认是一位执行者得到一个容器,还是一位执行者可以拥有多个容器。我在 Cloudera 上阅读了一些关于 YARN 内存管理的文档,它似乎在说 Container 有一个分配给它的 Executor。

Cloudera Memory Management

最佳答案

Spark Executor 在一个 Yarn Container 中运行,而不是跨 Container。

Yarn 容器由 YARN 资源管理器按需提供 - 在通过 YARN 动态资源分配启动 Spark 应用程序时。

一个 Yarn Container 只能有一个 Spark Executor,但是可以给 Executor 分配 1 个甚至更多的 Cores。

每个 Spark 执行器和驱动程序都作为其自己的 YARN 容器的一部分运行。

Executors 在给定的 Worker 上运行。

此外,一切都在一个应用程序的上下文中,因此一个应用程序有许多 worker 的执行者。

关于apache-spark - Spark中执行器和容器的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51760070/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com