分布式文件系統MFS、Ceph、GlusterFS、Lustre的比較

jopen 12年前發布 | 174K 次閱讀 分布式 分布式/云計算/大數據

</td>

MooseFS(MFS)

</td>

Ceph

</td>

GlusterFS

</td>

Lustre

</td> </tr>

Metadata server

</td>

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

</td>

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

</td>

無,不存在單點故障。靠運行在各個節點上的動態算法來代替MDS,不需同步元數據,無硬盤I/O瓶頸。

</td>

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

</td> </tr>

FUSE

</td>

支持

</td>

支持

</td>

支持

</td>

支持

</td> </tr>

訪問接口

</td>

POSIX

</td>

POSIX

</td>

POSIX

</td>

POSIX/MPI

</td> </tr>

文件分布/數據分布

</td>

文件被分片,數據塊保存在不同的存儲服務器上。

</td>

文件被分片,每個數據塊是一個對象。對象保存在不同的存儲服務器上。

</td>

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

AFR相當于RAID1,每個文件都被復制到多個存儲節點上。Stripe相當于RAID0,文件被分片,數據被條帶化到各個存儲節點上。

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

</td>

可以把大文件分片并以類似RAID0的方式分散存儲在多個存儲節點上。

</td> </tr>

冗余保護/副本

</td>

多副本

</td>

多副本

</td>

鏡像

</td>

</td> </tr>

數據可靠性

</td>

由數據的多副本提供可靠性。

</td>

由數據的多副本提供可靠性。

</td>

由鏡像提供可靠性。

</td>

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

</td> </tr>

備份

</td>

</td>

</td>

</td>

提供備份工具。支持遠程備份。

</td> </tr>

故障恢復

</td>

手動恢復

</td>

當節點失效時,自動遷移數據、重新復制副本。

</td>

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

</td>

</td> </tr>

擴展性

</td>

增加存儲服務器,可以提高容量和文件操作性能。但是由于不能增加MDS,因此元數據操作性能不能提高,是整個系統的瓶頸。

</td>

可以增加元數據服務器和存儲節點。容量可擴展。文件操作性能可擴展。元數據操作性能可擴展。

</td>

容量可擴展。

</td>

可增加存儲節點,提高容量可文件操作性能,但是由于不能增加MDS,因此元數據操作性能不能提高,是整個系統的瓶頸。

</td> </tr>

安裝/部署

</td>

簡單

</td>

簡單

</td>

簡單

</td>

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

</td> </tr>

開發語言

</td>

C

</td>

C++

</td>

C

</td>

C

</td> </tr>

適合場景

</td>

大量小文件讀寫

</td>

小文件

</td>

適合大文件。

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

</td>

大文件讀寫

</td> </tr>

產品級別

</td>

小型

</td>

中型

</td>

中型

</td>

重型

</td> </tr>

應用

</td>

國內較多

</td>

</td>

較多用戶使用

</td>

HPC領域。

</td> </tr>

優缺點

</td>

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

</td>

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

</td>

無元數據服務器,堆棧式架構(基本功能模塊可以進行堆棧式組合,實現強大功能)。具有線性橫向擴展能力。

由于沒有元數據服務器,因此增加了客戶端的負載,占用相當的CPU和內存。

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

</td>

很成熟、很龐大。

</td> </tr> </tbody> </table>

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

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!
  • sesese色