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是乙個不錯的分布式檔案系統,它有很多的優點,但也存在有一些缺點。目前而言,它在以下幾個方面就效率不佳 低延時訪問 hdfs不太適合於那些要求低延時 數十毫秒 訪問的應用程式,因為hdfs是設計用於大吞吐量資料的,這是以一定延時為代價的。hdfs是單master的,所有的對檔案的請求都要經過它...
HDFS的缺點及改進策略
hdfs是乙個不錯的分布式檔案系統,它有很多的優點,但也存在有一些缺點。目前而言,它在以下幾個方面就效率不佳 低延時訪問 hdfs不太適合於那些要求低延時 數十毫秒 訪問的應用程式,因為hdfs是設計用於大吞吐量資料的,這是以一定延時為代價的。hdfs是單master的,所有的對檔案的請求都要經過它...
EventBus的缺點及改進公升級
eventbus很屌,被廣泛用於事件分發 工程解耦,現在已經出到了第3版eventbuds3。網上對它的介紹太多了,我這裡就不詳細展開了。有不熟悉的可以閱讀以下這篇文章 老司機教你 飆 eventbus3 然而本文並不是靠吹噓eventbus來裝逼的,相反,我要數落一下它的缺點,並推介一下event...