【问题标题】:what's the actual ideal NameNode memory size when meet a lot files in HDFS在 HDFS 中遇到大量文件时,实际理想的 NameNode 内存大小是多少
【发布时间】:2016-09-27 10:25:26
【问题描述】:

我的 HDFS 集群中将有 2 亿个文件,我们知道每个文件将占用 NameNode 内存中的 150 个字节,加上 3 个块,因此在 NN 中总共有 600 个字节。 所以我将我的 NN 内存设置为 250GB 以很好地处理 2 亿个文件。我的问题是250GB这么大的内存,会不会对GC造成太大的压力?为NN创建250GB内存是否可行。

Can someone just say something, why no body answer??

【问题讨论】:

  • 可能是因为微调配置没有正确答案并且需要对您的集群进行深入分析,而且您的问题似乎是关于 GC 而不是问题的实际标题所暗示的误导

标签: hadoop hdfs namenode


【解决方案1】:

理想的名称节点内存大小约为数据元使用的总空间 + 操作系统 + 守护进程的大小和 20-30% 的空间用于处理相关数据。

您还应该考虑数据进入集群的速率。如果您的数据以 1TB/天的速度传入,那么您必须考虑使用更大的内存驱动器,否则您很快就会耗尽内存。

始终建议在任何时间点至少有 20% 的可用内存。这将有助于避免名称节点进入完整的垃圾收集。 正如 Marco 之前指定的,您可以参考 NameNode Garbage Collection Configuration: Best Practices and Rationale 进行 GC 配置。

如果您不打算获取大量数据并且不打算对现有数据进行大量操作,那么 256 看起来不错。

参考:How to Plan Capacity for Hadoop Cluster?

另请参阅:Select the Right Hardware for Your New Hadoop Cluster

【讨论】:

    【解决方案2】:

    您的名称节点中可以有 256 GB 的物理内存。如果您的数据大量增加,请考虑使用 hdfs 联合。我假设您在名称节点主机中已经拥有多核(带或不带超线程)。猜猜下面的链接解决了您的 GC 问题: https://community.hortonworks.com/articles/14170/namenode-garbage-collection-configuration-best-pra.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多