|
MooseFS(MFS)算法 |
Ceph服務器 |
GlusterFS網絡 |
Lustre架構 |
Metadata serveroracle |
單個MDS。存在單點故障和瓶頸。分佈式 |
多個MDS,不存在單點故障和瓶頸。MDS能夠擴展,不存在瓶頸。工具 |
無,不存在單點故障。靠運行在各個節點上的動態算法來代替MDS,不需同步元數據,無硬盤I/O瓶頸。性能 |
雙MDS(互相備份)。MDS不能夠擴展,存在瓶頸。優化 |
FUSEspa |
|
支持 |
|
|
訪問接口 |
POSIX |
POSIX+塊設備+文件對象 |
POSIX |
POSIX/MPI |
數據存儲策略 |
文件被分片,數據塊保存在不一樣的存儲服務器上。 |
文件被分片,每一個數據塊是一個對象。對象保存在不一樣的存儲服務器上的不一樣硬盤上 |
Cluster Translators(GlusterFS集羣存儲的核心)包括AFR、DHT(和Stripe三種類型。 AFR至關於RAID1,每一個文件都被複制到多個存儲節點上。Stripe至關於RAID0,文件被分片,數據被條帶化到各個存儲節點上。 Translators能夠組合,即AFR和stripe能夠組成RAID10,實現高性能和高可用。 |
1. 能夠把大文件分片並以相似RAID0的方式分散存儲在多個存儲節點上。 2. 經過共享存儲能夠作針對機器的高可用 |
冗餘保護/副本 |
|
支持 |
支持 |
不支持 |
數據可靠性 |
由數據的多副本提供可靠性。 |
由數據的多副本提供可靠性。 |
由鏡像提供可靠性。 |
由存儲節點上的RAID1或RAID5/6提供可靠性。假如存儲節點失效,則數據不可用。 |
備份 |
|
|
|
提供備份工具。支持遠程備份。 |
故障恢復 |
|
當節點失效時,自動遷移數據、從新複製副本。 |
當節點、硬件、磁盤、網絡發生故障時,系統會自動處理這些故障,管理員不需介入。 |
|
擴展性 |
增長存儲服務器,能夠提升容量和文件操做性能。可是因爲不能增長MDS,所以元數據操做性能不能提升,是整個系統的瓶頸。 |
能夠增長元數據服務器和存儲節點。容量可擴展。文件操做性能可擴展。元數據操做性能可擴展。 |
容量可擴展。 |
可增長存儲節點,提升容量可文件操做性能,可是因爲不能增長MDS,所以元數據操做性能不能提升,是整個系統的瓶頸。 |
安裝/部署 |
|
|
|
複雜。並且Lustre嚴重依賴內核,須要從新編譯內核。 |
開發語言 |
|
|
|
|
適合場景 |
大量小文件讀寫 |
大文件 |
適合大文件。 對於小文件,無元數據服務設計解決了元數據的問題。但GlusterFS並無在I/O方面做優化,在存儲服務器底層文件系統上仍然是大量小文件,本地文件系統元數據訪問是瓶頸,數據分佈和並行性也沒法充分發揮做用。所以,GlusterFS的小文件性能還存在很大優化空間。 |
大文件讀寫 |
|
應用 |
海量圖片等 |
雲、視頻媒體、塊設備等 |
較多用戶使用 |
在hpc上應用 |
優缺點 |
實施簡單,可是存在單點故障。 |
應用在生產環境的用戶還很少, 很多地方還不夠成熟和穩定。 |
無元數據服務器,堆棧式架構(基本功能模塊能夠進行堆棧式組合,實現強大功能)。具備線性橫向擴展能力。 因爲沒有元數據服務器,所以增長了客戶端的負載,佔用至關的CPU和內存。 但遍歷文件目錄時,則實現較爲複雜和低效,須要搜索全部的存儲節點。所以不建議使用較深的路徑。 |
成熟、穩定 缺點:被oracle收購了。 |