【问题标题】:What does VIRTUAL_MEMORY_BYTES task counter mean in Hadoop?Hadoop 中的 VIRTUAL_MEMORY_BYTES 任务计数器是什么意思?
【发布时间】:2018-11-23 18:43:08
【问题描述】:

权威指南的以下摘录提供了如下所示的高级细节,但

  1. 此任务计数器中的虚拟内存到底指的是什么?
  2. 如何解释它?它与 PHYSICAL_MEMORY_BYTES 有什么关系?

以下是其中一项工作的示例摘录。物理大小约为 214 GB。虚拟空间约为 611 GB。

【问题讨论】:

    标签: hadoop mapreduce hortonworks-data-platform apache-tez


    【解决方案1】:

    1.这个任务计数器中的虚拟内存到底指的是什么?

     Virtual Memory here is used to prevent Out of Memory errors of a task,if data size doesn't fits in RAM(physical mem).
      in RAM.So a portion of memory of size what didn't fit in RAM will be used as Virtual Memory.
    

    因此,在设置 hadoop 集群时,建议使用 vm.swappiness =1 的值以获得更好的性能。在 linux 系统上,vm.swappiness 默认设置为 60。 值越高,内存页交换越积极。

    https://community.hortonworks.com/articles/33522/swappiness-setting-recommendation.html

    2。如何解读它?它与 PHYSICAL_MEMORY_BYTES 有什么关系?

    swapping of memory pages from physical memory to virtual memory on disk when not enough phy mem
    

    这是 PHYSICAL_MEMORY_BYTES 和 VIRTUAL_MEMORY_BYTES 之间的关系。

    【讨论】:

    • 你认为我应该如何解释我在问题中的价值观? vm 字节远高于物理内存。
    • vm 字节是 ram 加上使用的交换空间的总和。 pm vytes 和 vm bytes 的区别是交换空间 611 -214 =397 G
    • Dr Elephant 是分析 mr/tez/spark 工作以更清晰的好选择。他们收集这些计数器并提供报告github.com/linkedin/dr-elephant/wiki
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-05
    • 1970-01-01
    • 2014-10-11
    • 1970-01-01
    • 1970-01-01
    • 2014-12-02
    • 2012-03-04
    相关资源
    最近更新 更多