gpt4 book ai didi

java - 如何调整hadoop集群中的 "DataNode maximum Java heap size"

转载 作者:可可西里 更新时间:2023-11-01 15:03:46 25 4
gpt4 key购买 nike

我在 google 中搜索以查找有关如何调整值的信息 - DataNode maximum Java heap size,除了这个 -

https://community.hortonworks.com/articles/74076/datanode-high-heap-size-alert.html

https://docs.oracle.com/cd/E19900-01/819-4742/abeik/index.html

但未找到计算DataNode 最大 Java 堆大小值的公式

DataNode 最大 Java 堆大小 的默认值为 1G

我们将这个值增加到 5G ,因为在某些情况下我们从数据节点日志中看到关于堆大小的错误

但这不是调整值的正确方法

那么关于如何设置正确值的任何建议或好文章 - datanode 记录有关堆大小的错误?

假设我们有以下 hadoop 集群大小:

  1. 10台datanode机器,5 block 磁盘,每 block 磁盘1T

  2. 每个数据节点有32个CPU

  3. 每个数据节点有256G内存

根据此信息,我们能否找到显示正确值的公式 - “datanode logs error about heap size”?

关于 hortonworks:他们建议将 Datanode java 堆设置为 4G但我不确定这个案例是否可以涵盖所有场景?

根本原因:DN 操作的 IO 开销很大,不需要 16GB 的堆。

https://community.hortonworks.com/articles/74076/datanode-high-heap-size-alert.html

RESOLUTION: Tuning GC parameters resolved the issue -
4GB Heap recommendation :
-Xms4096m -Xmx4096m -XX:NewSize=800m
-XX:MaxNewSize=800m -XX:+UseParNewGC
-XX:+UseConcMarkSweepGC
-XX:+UseCMSInitiatingOccupancyOnly
-XX:CMSInitiatingOccupancyFraction=70
-XX:ParallelGCThreads=8

最佳答案

hadoop-env.sh(也是 Ambari 中的一些字段,只需尝试搜索堆)中,有一个设置值的选项。可能在 shell 文件中被称为 HADOOP_DATANODE_OPTS

对于大多数服务器来说,8GB 通常是一个不错的值。不过,您有足够的内存,所以我将从这里开始,并通过 Grafana 中的 JMX 指标主动监控使用情况,例如。

namenode 可能也需要调整 https://community.hortonworks.com/articles/43838/scaling-the-hdfs-namenode-part-1.html

关于java - 如何调整hadoop集群中的 "DataNode maximum Java heap size",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53654046/

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