hdfs是乙個不錯的分布式檔案系統,它有很多的優點,但也存在有一些缺點。目前而言,它在以下幾個方面就效率不佳:
低延時訪問
hdfs不太適合於那些要求低延時(數十毫秒)訪問的應用程式,因為hdfs是設計用於大吞吐量資料的,這是以一定延時為代價的。hdfs是單master的,所有的對檔案的請求都要經過它,當請求多時,肯定會有延時。當前,對於那些有低延時要求的應用程式,hbase是乙個更好的選擇。現在hbase的版本是0.20,相對於以前的版本,在效能上有了很大的提公升,它的口號就是goes real time。
使用快取或多master設計可以降低client的資料請求壓力,以減少延時。還有就是對hdfs系統內部的修改,這就得權衡大吞吐量與低延時了,hdfs不是萬能的銀彈。
大量小檔案
要想讓hdfs能處理好小檔案,有不少方法:
1、利用sequencefile、mapfile、har等方式歸檔小檔案,這個方法的原理就是把小檔案歸檔起來管理,hbase就是基於此的。對於這種方法,如果想找回原來的小檔案內容,那就必須得知道與歸檔檔案的對映關係。
2、橫向擴充套件,乙個hadoop集群能管理的小檔案有限,那就把幾個hadoop集群拖在乙個虛擬伺服器後面,形成乙個大的hadoop集群。google也是這麼幹過的。
3、多master設計,這個作用顯而易見了。正在研發中的gfs ii也要改為分布式多master設計,還支援master的failover,而且block大小改為1m,有意要調優處理小檔案啊。
附帶個alibaba dfs的設計,也是多master設計,它把metadata的對映儲存和管理分開了,由多個metadata儲存節點和乙個查詢master節點組成。
多使用者寫,任意檔案修改
利用chubby、zookeeper之類的分布式協調服務來解決一致性問題。
分布式檔案系統 HDFS
hdfs源於google發表的乙份gfs hdfs是hadoop專案的核心子專案,是分布式計算中資料儲存管理的基礎,可以執行在廉價機器上,具有高容錯 高可靠性 高可擴充套件性 高獲得性 高吞吐率等特性,為超大資料集的應用處理帶來極大便利。1 hdfs的優點 1 高容錯性 資料自動儲存多個版本,通過增...
分布式檔案系統HDFS
以 bin dfs dfs 開頭的shell命令方式 1 在hdfs中為hadoop使用者建立乙個使用者目錄 hadoop使用者 2 在使用者目錄下建立乙個input目錄 3 在hdfs的根目錄下建立乙個名稱為input的目錄 4 刪除hdfs根目錄中的 input 目錄 在該檔案裡面可以隨意輸入一...
分布式檔案系統HDFS
以 bin dfs dfs 開頭的shell命令方式 1 在hdfs中為hadoop使用者建立乙個使用者目錄 hadoop使用者 2 在使用者目錄下建立乙個input目錄 3 在hdfs的根目錄下建立乙個名稱為input的目錄 4 刪除hdfs根目錄中的 input 目錄 在該檔案裡面可以隨意輸入一...