日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

HDFS使用優化

本文為您介紹在E-MapReduce(簡稱EMR)上使用HDFS進行場景化配置的一些建議,以便優化HDFS的使用性能或穩定性等。

背景信息

控制小文件個數

  • 背景:HDFS NameNode將所有文件元數據加載在內存中,在集群磁盤容量一定的情況下,如果小文件個數過多,則會造成NameNode的內存容量瓶頸。

  • 建議:盡量控制小文件的個數。對于存量的小文件,建議合并為大文件。

配置HDFS單目錄文件數量

  • 背景:當集群運行時,不同組件(例如Spark和YARN)或客戶端可能會向同一個HDFS目錄不斷寫入文件。但HDFS系統支持的單目錄文件數目是有上限的,因此需要您提前做好規劃,防止單個目錄下的文件數目超過閾值,導致任務出錯。

  • 建議:您可以在EMR控制臺HDFS服務的配置頁面,單擊hdfs-site頁簽,然后單擊新增配置項,新增參數dfs.namenode.fs-limits.max-directory-items,以設置單個目錄下可以存儲的文件數目,最后保存配置。添加參數詳情,請參見管理配置項

    說明

    您需要將數據做好存儲規劃,可以按時間、業務類型等分類,單個目錄下直屬的文件不要過多,建議單個目錄下約100萬條。

配置可容忍的磁盤壞卷

  • 背景:如果為DataNode配置多個數據存放卷,默認情況下必須至少有一個有效卷,其中一個卷損壞,則DataNode將不再提供服務。

  • 建議:您可以在EMR控制臺HDFS服務的配置頁面,在配置搜索區域,搜索參數dfs.datanode.failed.volumes.tolerated,您可以修改此參數。小于該參數值,DataNode可以繼續提供服務。

    參數

    描述

    默認值

    dfs.datanode.failed.volumes.tolerated

    DataNode停止提供服務前允許失敗的卷數。

    0

    說明

    當DataNode存在壞盤,而又沒有其他足夠的節點可以提供服務時,可以臨時將該值調大,先將DataNode啟動起來。

使用Balancer進行容量均衡

  • 背景:HDFS集群可能出現DataNode節點間磁盤利用率不平衡的情況,例如集群中添加新DataNode的場景。如果HDFS出現數據不平衡的狀況,則可能導致個別DataNode壓力過大。

  • 建議:您可以使用Balancer操作進行容量均衡。

    說明

    執行Balancer操作時會占用DataNode的網絡帶寬資源,請根據業務需求在業務空閑時期執行Balancer任務。

    1. 登錄待配置集群的任意節點。

    2. 可選:執行以下命令,修改Balancer的最大帶寬。

      hdfs dfsadmin -setBalancerBandwidth <bandwidth in bytes per second>
      說明

      示例中的<bandwidth in bytes per second>為設置的最大帶寬,例如,如果需要設置帶寬控制為200 MB/s,對應值為200 * 1024 * 1024B,即209715200字節,則完整代碼示例為hdfs dfsadmin -setBalancerBandwidth 209715200。如果集群負載較高,為了緩解網絡壓力,應該將帶寬限制降低,可以改為20971520(20 MB/s);如果集群空閑,為了加速數據均衡過程,建議將帶寬限制提高,可以改為1073741824(1 GB/s)。

    3. 執行以下命令,切換到hdfs用戶并執行Balancer參數。

      su hdfs
      /opt/apps/HDFS/hdfs-current/sbin/start-balancer.sh -threshold 10
    4. 執行以下命令,查看Balancer日志。

      tail -f /var/log/emr/hadoop-hdfs/hadoop-hdfs-balancer-master-1-1.c-xxx.log
      說明

      命令中的hadoop-hdfs-balancer-master-1-1.c-xxx為前面步驟中獲取到的日志名稱。

當提示信息包含Successfully字樣時,表示執行成功。