gpt4 book ai didi

performance - Apache Spark 分布式环境调优

转载 作者:可可西里 更新时间:2023-11-01 16:47:55 26 4
gpt4 key购买 nike

我会在分布式环境中最大限度地提高 Hadoop 性能(使用 Apache Spark 和 Yarn)并且我正在遵循 blog post of Cloudera 上的提示使用此配置:

6 nodes, 16 core/node, ram 64G/node

建议的解决方案是:--num-executors 17 --executor-cores 5 --executor-memory 19G

但我不明白为什么他们使用 17 个 num 执行器(换句话说每个节点 3 个执行器)。

我们的配置是:

8 nodes, 8 core/node, ram 8G/node

什么是最好的解决方案?

最佳答案

你的内存很低。我希望这会更高。

但是,我们从 8 个节点和 8 个核心开始。为了确定我们的最大执行器,我们执行节点*(核心-1)= 56。从每个节点减去 1 个核心用于管理。

所以我会从56个executor,1个executor core,1G ram。

如果您遇到内存不足的问题,请将内存加倍,让执行程序增加内核。28个执行器,2个执行器核心,2G ram但是你的最大执行者会更少,因为执行者必须适合一个节点。您最多可以获得总共 24 个分配的容器。

接下来我会在 4 核之前尝试 3 核,因为 3 核将适合每个节点上的 2 个执行器,而 4 核将具有与 7 相同的执行器。

或者,您可以直接跳到...8 个执行器,7 个内核,7gig ram(想为集群的其余部分留下一些)。

我还发现如果 CPU 调度被禁用,yarn 会覆盖我的核心设置,并且它始终保持在 1,无论我的配置如何。还必须更改其他设置才能启用此功能。

yarn.schedular.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DominantResourceCalculator

关于performance - Apache Spark 分布式环境调优,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35317305/

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