복붙노트

[HADOOP] hadoop의 namenode의 메모리 소비?

HADOOP

hadoop의 namenode의 메모리 소비?

누구든지 namenode의 메모리 소비에 대한 상세한 분석을 할 수 있습니까? 아니면 참고 자료가 있습니까? 네트워크에서 자료를 찾을 수 없습니다. 감사합니다!

해결법

  1. ==============================

    1.메모리 소비량은 HDFS 설정에 따라 다르므로 HDFS의 전체 크기에 따라 달라지며 블록 크기에 비례합니다. Hadoop NameNode 위키에서 :

    메모리 소비량은 HDFS 설정에 따라 다르므로 HDFS의 전체 크기에 따라 달라지며 블록 크기에 비례합니다. Hadoop NameNode 위키에서 :

    https://twiki.opensciencegrid.org/bin/view/Documentation/HadoopUnderstanding에서 :

    동일한 사이트에서 다음을 권장합니다.

    메모리 사용에 대한보다 자세한 분석은 다음 링크를 확인하십시오. https://issues.apache.org/jira/browse/HADOOP-1687

    이 질문은 흥미 로울 수도 있습니다. Hadoop namenode memory usage

  2. ==============================

    2.NameNode (NN)에는 몇 가지 기술적 인 한계가 있으며 그 중 하나에 직면하면 확장 성이 제한됩니다.

    NameNode (NN)에는 몇 가지 기술적 인 한계가 있으며 그 중 하나에 직면하면 확장 성이 제한됩니다.

  3. ==============================

    3.계산 예

    계산 예

    200 노드 클러스터 24TB / 노드 128MB 블록 크기 복제 인수 = 3

    얼마나 많은 공간이 필요합니까?

    # 블록 = 200 * 24 * 2 ^ 20 / (128 * 3) ~ 1200 만 블록 ~ 12,000 MB 메모리.

  4. ==============================

    4.우리는 namenode 메모리가 각 namenode 객체에 의해 소비되는 방식과 namenode 힙의 크기 조정을위한 일반적인 권장 사항을 구별해야한다고 생각합니다.

    우리는 namenode 메모리가 각 namenode 객체에 의해 소비되는 방식과 namenode 힙의 크기 조정을위한 일반적인 권장 사항을 구별해야한다고 생각합니다.

    첫 번째 경우 (소비) 인 AFAIK의 경우 각 namenode 객체는 평균 150 바이트의 메모리를 보유합니다. 네임 노드 객체는 파일, 블록 (복제 된 사본을 포함하지 않음) 및 디렉토리입니다. 그래서 3 블록을 취하는 파일의 경우 이것은 4 개 (1 파일과 3 블록) x150 바이트 = 600 바이트입니다.

    두 번째로 권장되는 힙 크기 인 namenode의 경우 일반적으로 1 백만 블록 당 1GB를 예약하는 것이 좋습니다. 이 값 (블록 당 150 바이트)을 계산하면 150MB의 메모리가 소비됩니다. 이것은 1 백만 블록 당 1GB보다 훨씬 적지 만 파일 크기, 디렉토리의 수를 고려해야합니다.

    나는 그것이 안전한 측면 권고라고 생각한다. 보다 일반적인 토론과 예제를 보려면 다음 두 링크를 확인하십시오.

    크기 조정 이름 노드 힙 메모리 - Cloudera

    NameNode 힙 크기 구성 - Hortonworks

    네임 노드 메모리 구조 내부

  5. from https://stackoverflow.com/questions/13304941/the-memory-consumption-of-hadoops-namenode by cc-by-sa and MIT license