導(dǎo)論
????最近發(fā)現(xiàn)生產(chǎn)Hadoop集群磁盤利用率達(dá)到了60%
葵礼,數(shù)據(jù)增長(zhǎng)速度超出了預(yù)期拼坎。針對(duì)以上問題盾碗,提出了兩種方案:
1、減少數(shù)據(jù)的副本
2邮弹、增加磁盤或節(jié)點(diǎn)
本文主要記錄修改數(shù)據(jù)備份<dfs.replication>的過程喂饥。
步驟
1、修改hdfs-site.xml
文件
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
2肠鲫、重啟hdfs
./stop-dfs.sh
./start-dfs.sh
`注意`:一般重啟集群的流程是:stop集群-修改配置文件-start集群。
我們的應(yīng)用場(chǎng)景是HBase一直有數(shù)據(jù)寫入或粮,如果按照上面的流程导饲,可能會(huì)出現(xiàn)HBase連接超時(shí),從而導(dǎo)致數(shù)據(jù)丟失氯材。
所以渣锦,采用了先改配置,再重啟集群的方式氢哮。
3袋毙、驗(yàn)證
注意
:上傳到HDFS的數(shù)據(jù),便只有兩個(gè)備份了冗尤,該操作只針對(duì)后面新增的數(shù)據(jù)听盖,而之前已存在的數(shù)據(jù)仍然是三個(gè)備份。
4裂七、修改已存在數(shù)據(jù)的備份
命令格式: hdfs fs -setrep [-R] [-w] <numReplicas> <path>
操作舉例: hdfs dfs -setrep -R -w 2 /hbase
參數(shù)說明:
- -R:作用于目錄下所有子目錄的數(shù)據(jù)(向后兼容)
- -w:等待副本復(fù)制完成
- -rep:numReplicas皆看,修改后的備份數(shù)
- -path:需要修改備份的HDFS上的目錄下
?????命令執(zhí)行過程中,會(huì)比較耗時(shí)背零,也有可能會(huì)中斷(原因暫時(shí)不明
)腰吟,中斷后可多試幾次,該命令執(zhí)行的過程中不會(huì)影響數(shù)據(jù)的寫入徙瓶。
5毛雇、通過命令查看副本數(shù)情況
執(zhí)行命令:hdfs fsck /
有上面可以看出,數(shù)據(jù)備份由3變成了2.5侦镇,說明語(yǔ)句產(chǎn)生了效果灵疮。