1. 程式人生 > >分散式檔案系統MFS、Ceph、GlusterFS、Lustre的比較

分散式檔案系統MFS、Ceph、GlusterFS、Lustre的比較

原文:http://blog.csdn.net/metaxen/article/details/7108958

MooseFS(MFS)

Ceph

GlusterFS

Lustre

Metadata server

單個MDS。存在單點故障和瓶頸。

多個MDS,不存在單點故障和瓶頸。MDS可以擴充套件,不存在瓶頸。

無,不存在單點故障。靠執行在各個節點上的動態演算法來代替MDS,不需同步元資料,無硬碟I/O瓶頸。

雙MDS(互相備份)。MDS不可以擴充套件,存在瓶頸。

FUSE

支援

支援

支援

支援

訪問介面

POSIX

POSIX

POSIX

POSIX/MPI

檔案分佈/資料分佈

檔案被分片,資料塊儲存在不同的儲存伺服器上。

檔案被分片,每個資料塊是一個物件。物件儲存在不同的儲存伺服器上。

Cluster Translators(GlusterFS叢集儲存的核心)包括AFR、DHT(和Stripe三種類型。

AFR相當於RAID1,每個檔案都被複制到多個儲存節點上。Stripe相當於RAID0,檔案被分片,資料被條帶化到各個儲存節點上。

Translators可以組合,即AFR和stripe可以組成RAID10,實現高效能和高可用。

可以把大檔案分片並以類似RAID0的方式分散儲存在多個儲存節點上。

冗餘保護/副本

多副本

多副本

映象

資料可靠性

由資料的多副本提供可靠性。

由資料的多副本提供可靠性。

由映象提供可靠性。

由儲存節點上的RAID1或RAID5/6提供可靠性。假如儲存節點失效,則資料不可用。

備份

提供備份工具。支援遠端備份。

故障恢復

手動恢復

當節點失效時,自動遷移資料、重新複製副本。

當節點、硬體、磁碟、網路發生故障時,系統會自動處理這些故障,管理員不需介入。

擴充套件性

增加儲存伺服器,可以提高容量和檔案操作效能。但是由於不能增加MDS,因此元資料操作效能不能提高,是整個系統的瓶頸。

可以增加元資料伺服器和儲存節點。容量可擴充套件。檔案操作效能可擴充套件。元資料操作效能可擴充套件。

容量可擴充套件。

可增加儲存節點,提高容量可檔案操作效能,但是由於不能增加MDS,因此元資料操作效能不能提高,是整個系統的瓶頸。

安裝/部署

簡單

簡單

簡單

複雜。而且Lustre嚴重依賴核心,需要重新編譯核心。

開發語言

C

C++

C

C

適合場景

大量小檔案讀寫

小檔案

對於小檔案,無元資料服務設計解決了元資料的問題。但GlusterFS並沒有在I/O方面作優化,在儲存伺服器底層檔案系統上仍然是大量小檔案,本地檔案系統元資料訪問是瓶頸,資料分佈和並行性也無法充分發揮作用。因此,GlusterFS的小檔案效能還存在很大優化空間。

大檔案讀寫

產品級別

小型

中型

中型

重型

應用

國內較多

較多使用者使用

HPC領域。

優缺點

實施簡單,但是存在單點故障。

不穩定,目前還在實驗階段,不適合於生產環境。

無元資料伺服器,堆疊式架構(基本功能模組可以進行堆疊式組合,實現強大功能)。具有線性橫向擴充套件能力。

由於沒有元資料伺服器,因此增加了客戶端的負載,佔用相當的CPU和記憶體。

但遍歷檔案目錄時,則實現較為複雜和低效,需要搜尋所有的儲存節點。因此不建議使用較深的路徑。

很成熟、很龐大。