MooseFS和Hadoop兩個分散式文件系統各有什麼優缺點?

在網上搜MooseFS和Hadoop兩個分散式文件系統的對比,發現沒有太多營養的文章,我在分散式文件系統上又是小白,求大神對比一下MooseFS和Hadoop,以及現在主流都用哪個?


瀉藥!

首先,說一下這兩個分散式文件系統的相同之處:1.這兩個文件系統都是類似GoogleFS的實現方式,即一個MasterServer和多個ChunkServer構成的存儲集群;2.這兩個文件系統都存在MasterServer的單點問題(個人認為主從備份並不能從根本上解決這個問題,該問題的解決之道應該是類似 Ceph 多元數據伺服器方式,這方面也是我研究生階段的研究點之一);3.這兩個文件系統追加寫模式,也就是說,兩者都更加適合「一次寫多次讀」的模式,如果涉及到數據的修改,那麼這個問題就相對比較麻煩了(更好的辦法可以參考Sorrento這個文件系統);4.由於海量元數據的因素,對待海量小文件都相對比較乏力(更好地解決辦法可以參考Facebook的Haystack);5.兩者都支持在線擴容。

我們再來看看這兩個分散式文件系統的差異:1.HDFS由Java實現,MooseFS由C++實現;2.HDFS不符合posix語義,MooseFS是完全符合posix語義的,原因在於MooseFS是通過Fuse來通過客戶端介面的(Fuse目前已經是標準內核的一部分了),現有使用本地文件系統的程序可以直接平滑遷移到MooseFS上,無需任何修改,但是MooseFS也付出了相應地開銷:使用HDFS編寫程序時直接使用庫(如libhdfs)就可以跟Master或者ChunkServer通信,請求傳輸更為高效,而MooseFS需要通過標準posix介面將請求發送到內核,再通過Fuse將請求截獲發送到用戶態,然後才能和Master或者ChunkServer通信;3.MooseFS提供了快照功能,HDFS目前還沒有看到這個方面的實際開發行動;4.MooseFS針對小文件和隨機I/O進行了一些優化;

說到主流這個問題,HDFS具有壓倒性的優勢:Facebook、Yahoo、阿里、騰訊、百度等等都是使用者,社區也更為活躍,誰讓Apache Software Foundation是開源一姐呢?!但是題主也不用灰心,MooseFS的粉絲也不少 Who is using MooseFS,其中當屬豆瓣是大哥,1.5PB的數據也證明了MooseFS還是有兩把刷子的。

最後,個人覺得這兩個文件系統都還是達到了工業生產級別的,應該根據實際的存儲需求來做選擇,兩者的差異並不是那麼大。

Good luck!


個人覺得這兩個文件系統都還是達到了工業生產級別的,應該根據實際的存儲需求來做選擇,兩者的差異並不是那麼大。

Good luck!

Hadoop核心系統原理 http://www.kokojia.com/xitongyunwei/video22625-1250.html這個鏈接裡面內容挺好的,有興趣的可以看看,說不定對你有所幫助。


著作權歸作者所有。

商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

作者:huanglenzhi

鏈接:MooseFS和Hadoop兩個分散式文件系統各有什麼優缺點_百度知道

來源:百度知道

首先,說一下這兩個分散式文件系統的相同之處:

1.這兩個文件系統都是類似GoogleFS的實現方式,即一個MasterServer和多個ChunkServer構成的存儲集群;

2.這兩個文件系統都存在MasterServer的單點問題(個人認為主從備份並不能從根本上解決這個問題,該問題的解決之道應該是類似 Ceph 多元數據伺服器方式,這方面也是我研究生階段的研究點之一);

3.這兩個文件系統追加寫模式,也就是說,兩者都更加適合「一次寫多次讀」的模式,如果涉及到數據的修改,那麼這個問題就相對比較麻煩了(更好的辦法可以參考Sorrento這個文件系統);

4.由於海量元數據的因素,對待海量小文件都相對比較乏力(更好地解決辦法可以參考Facebook的Haystack);

5.兩者都支持在線擴容。

我們再來看看這兩個分散式文件系統的差異:

1.HDFS由Java實現,MooseFS由C++實現;

2.HDFS不符合posix語義,MooseFS是完全符合posix語義的,原因在於MooseFS是通過Fuse來通過客戶端介面的(Fuse目前已經是標準內核的一部分了),現有使用本地文件系統的程序可以直接平滑遷移到MooseFS上,無需任何修改,但是MooseFS也付出了相應地開銷:使用HDFS編寫程序時直接使用庫(如libhdfs)就可以跟Master或者ChunkServer通信,請求傳輸更為高效,而MooseFS需要通過標準posix介面將請求發送到內核,再通過Fuse將請求截獲發送到用戶態,然後才能和Master或者ChunkServer通信;

3.MooseFS提供了快照功能,HDFS目前還沒有看到這個方面的實際開發行動;

4.MooseFS針對小文件和隨機I/O進行了一些優化;說到主流這個問題,HDFS具有壓倒性的優勢:Facebook、Yahoo、阿里、騰訊、百度等等都是使用者,社區也更為活躍,誰讓Apache Software Foundation是開源一姐呢?!

但是題主也不用灰心,MooseFS的粉絲也不少 Who is using MooseFS,1.5PB的數據也證明了MooseFS還是有兩把刷子的。


在工業4.0記的今天來看,兩者的差異並沒有太多的差異。


推薦閱讀:

既然Spark比Hadoop性能好很多,Hadoop未來發展方向是什麼?
Spark排序的原理?
HBase可以替代redis嗎?
為什麼(hadoop基準測試中)HDFS寫入速度如此之慢?
Hadoop Streaming模式的優缺點?

TAG:分散式計算 | 分散式存儲 | 文件系統 | Hadoop |