hadoop - Yarn 上保留的内存是什么

标签 hadoop apache-spark hadoop-yarn hadoop2

我成功地在 Yarn 上启动了一个 spark 应用程序。然而,内存使用情况有点奇怪,如下所示:

http://imgur.com/1k6VvSI

保留内存是什么意思?我怎样才能有效地使用所有可用内存?

提前致谢。

最佳答案

查看 this blog来自 Cloudera,解释了 YARN 中的新内存管理。

这里是相关的部分:

... An implementation detail of this change that prevents applications from starving under this new flexibility is the notion of reserved containers. Imagine two jobs are running that each have enough tasks to saturate more than the entire cluster. One job wants each of its mappers to get 1GB, and another job wants its mappers to get 2GB. Suppose the first job starts and fills up the entire cluster. Whenever one of its task finishes, it will leave open a 1GB slot. Even though the second job deserves the space, a naive policy will give it to the first one because it’s the only job with tasks that fit. This could cause the second job to be starved indefinitely. To prevent this unfortunate situation, when space on a node is offered to an application, if the application cannot immediately use it, it reserves it, and no other application can be allocated a container on that node until the reservation is fulfilled. Each node may have only one reserved container. The total reserved memory amount is reported in the ResourceManager UI. A high number means that it may take longer for new jobs to get space. ,,,

关于hadoop - Yarn 上保留的内存是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28566468/

相关文章:

hadoop - Hive cdh4 节俭设置抛出 NoSuchFieldError : METASTORE THRIFT RETRIES

out-of-memory - Spark java.lang.OutOfMemoryError : Java heap space

apache-spark - 如何将行添加到 Spark 中的现有分区?

hadoop - 当以非 hadoop 用户身份运行时,Yarn MapReduce approximate-pi 示例失败退出代码 1

hadoop - YARN 资源管理器未连接到节点管理器

hadoop - 批量加载离线数据到Kafka为 "Entering door"的DWH环境

hadoop - 如何从 Ubuntu 中的命令行创建 Amazon EMR 集群?

java - 在 Hadoop 中使用 DBOutputFormat

hadoop - 空RDD上的转换结果

hadoop - 跟踪 URL : N/A , RPC 端口:-1