1. 程式人生 > >hadoop涉及到分攤磁碟io負載的配置

hadoop涉及到分攤磁碟io負載的配置

配置datanode block存放目錄的時候,機器多磁碟能分攤磁碟IO負載,以下配置

<property>
             <name>dfs.datanode.data.dir</name>
             <value>file:/data2/hadoop/hd_space/dfs/data,file:/data3/hadoop/hd_space/dfs/data.........</value>
</property>

<property>

            <name>dfs.datanode.fsdataset.volume.choosing.policy</name>
            <value>org.apache.hadoop.hdfs.server.datanode.fsdataset.AvailableSpaceVolumeChoosingPolicy</value>
             <description>
                  datanode資料副本存放的磁碟選擇策略,有2種方式一種是輪詢方式(org.apache.hadoop.hdfs.server.datanode.fsdataset.RoundRobinVolumeChoosingPolicy,為預設方式),
                  另一種為選擇可用空間足夠多的磁碟儲存方式,這個為了防止各個節點上的各個磁碟的儲存均勻採用這個方式。
            </description>
 </property>
<property>
            <name>dfs.datanode.available-space-volume-choosing-policy.balanced-space-threshold</name>
           <value>10737418240</value>
            <description>
                   當在上面datanode資料副本存放的磁碟選擇可用空間足夠多的磁碟儲存方式開啟時,此選項才生效。這個引數主要功能是:
                   首先計算出兩個值,算出一個節點上所有磁碟中具有最大可用空間,另外一個值是所有磁碟中最小可用空間,如果這
                   兩個值相差小於該配置項指定的閥值時,則就用輪詢方式的磁碟選擇策略選擇磁碟儲存資料副本,如果比這個閥值大的話則
                   還是選擇可用空間足夠多的磁碟儲存方式。此項預設值為10737418240即10G
                  </description>
 </property>
<property>
                  <name>dfs.datanode.available-space-volume-choosing-policy.balanced-space-preference-fraction</name>
                  <value>0.75f</value>
                  <description>
                   預設值是0.75f,一般使用預設值就行。具體解析:有多少比例的資料副本應該儲存到剩餘空間足夠多的磁碟上。
                   該配置項取值範圍是0.0-1.0,一般取0.5-1.0,如果配置太小,會導致剩餘空間足夠的磁碟實際上沒分配足夠的資料副本,
                   而剩餘空間不足的磁碟取需要儲存更多的資料副本,導致磁碟資料儲存不均衡。
                  </description>

 </property>

yarn-site.xml

中yarn.nodemanager.local-dirs配置中間結果目錄,yarn.nodemanager.log-dirs日誌配置也要分攤io配置;