FastDFS文件系統(二) fastdfs和其他文件系統區別


FastDFS文件系統(二) fastdfs和其他文件系統區別

一、概述

 

普通存儲方案:Rsync、DAS(IDE/SATA/SAS/SCSI等塊)、NAS(NFS、CIFS、SAMBA等文件系統)、SAN(FibreChannel, iSCSI, FoE存儲網絡塊),Openfiler、FreeNas(ZFS快照復制)由於生產環境中往往由於對存儲數據量很大,而SAN存儲價格又比較昂貴,因此大多會選擇分布式
存儲來解決一下問題:

 

  1. 海量數據存儲問題
  2. 數據高可用問題(冗余備份)問題
  3. 較高的讀寫性能和負載均衡問題
  4. 支持多平台多語言問題
  5. 高並發問題

主要對別指標 csdn這表格太難用了,我還是word整理后搬到這兒來的。

 

指標

適合類型

文件分布

系統性能

復雜度

FUSE

POSIX

備份機制

通訊協議接口

社區支持

去重

開發語言

FastDFS

4KB~500MB

小文件合並存儲不分片處理

很高

簡單

不支持

不支持

組內冗余備份

Api

HTTP

國內用戶群

 

C語言

TFS

所有文件

小文件合並,以block組織分片

 

復雜

不支持

不支持

Block存儲多份,主輔災備

API

http

 

C++

MFS

大於64K

分片存儲

Master占內存多

 

支持

支持

多點備份動態冗余

使用fuse掛在

較多

 

Perl

HDFS

大文件

大文件分片分塊存儲

 

簡單

支持

支持

多副本

原生api

較多

 

Java

Ceph

對象文件塊

OSD一主多從

 

復雜

支持

支持

多副本

原生api

較少

 

C++

MogileFS

海量小圖片

 

復雜

可以支持

不支持

動態冗余

原生api

文檔少

 

Perl

ClusterFS

大文件

 

 

簡單

支持

支持

鏡像

 

 

C

 

 

二、常用的分布式文件系統

常見的分布式文件系統有FastDFS,GFS、HDFS、Ceph 、GridFS 、mogileFS、TFS等。各自適用於不同的領域。它們都不是系統級的分布式文件系統,而是應用級的分布式文件存儲服務。

FastDFS介紹

=======================

請參照FastDFS文件系統(一) fastdfs是什么? 

 

GFS(Google File System)

=======================

 

Google公司為了滿足本公司需求而開發的基於Linux的專有分布式文件系統。。盡管Google公布了該系統的一些技術細節,但Google並沒有將該系統的軟件部分作為開源軟件發布。
下面分布式文件系統都是類 GFS的產品。

HDFS(Hadoop Distributed File System)
=======================
Hadoop 實現了一個分布式文件系統,主要用於大數據計算存儲,簡稱HDFS。 Hadoop是Apache Lucene創始人Doug Cutting開發的使用廣泛的文本搜索庫。它起源於Apache Nutch,后者是一個開源的網絡搜索引擎,本身也是Luene項目的一部分。Aapche Hadoop架構是MapReduce算法的一種開源應用,是Google開創其帝國的重要基石。

=======================
是加州大學聖克魯茲分校的Sage weil攻讀博士時開發的分布式文件系統。Ceph能夠在維護 POSIX 兼容性的同時加入了復制和容錯功能。Sage weil並使用Ceph完成了他的論文。說 ceph 性能最高,C++編寫的代碼,支持Fuse,並且沒有單點故障依賴, 於是下載安裝, 由於 ceph 使用 btrfs 文件系統, 而btrfs 文件系統需要 Linux 2.6.34 以上的內核才支持。

GridFS文件系統
=======================
MongoDB是一種知名的NoSql數據庫,GridFS是MongoDB的一個內置功能,它提供一組文件操作的API以利用MongoDB存儲文件,GridFS的基本原理是將文件保存在兩個Collection中,一個保存文件索引,一個保存文件內容,文件內容按一定大小分成若干塊,每一塊存在一個Document中,這種方法不僅提供了文件存儲,還提供了對文件相關的一些附加屬性(比如MD5值,文件名等等)的存儲。文件在GridFS中會按4MB為單位進行分塊存儲。

MogileFS
=======================
由memcahed的開發公司danga一款perl開發的產品,目前國內使用mogielFS的有圖片托管網站yupoo等。
MogileFS是一套高效的文件自動備份組件,由Six Apart開發,廣泛應用在包括LiveJournal等web2.0站點上。
MogileFS由3個部分組成:
  第1個部分是server端,包括mogilefsd和mogstored兩個程序。前者即是 mogilefsd的tracker,它將一些全局信息保存在數據庫里,例如站點domain,class,host等。后者即是存儲節點(store node),它其實是個HTTP Daemon,默認偵聽在7500端口,接受客戶端的文件備份請求。在安裝完后,要運行mogadm工具將所有的store node注冊到mogilefsd的數據庫里,mogilefsd會對這些節點進行管理和監控。
  第2個部分是utils(工具集),主要是MogileFS的一些管理工具,例如mogadm等。
  第3個部分是客戶端API,目前只有Perl API(MogileFS.pm)、PHP,用這個模塊可以編寫客戶端程序,實現文件的備份管理功能。


TFS
-------------------------------------
TFS(Taobao !FileSystem)是一個高可擴展、高可用、高性能、面向互聯網服務的分布式文件系統,主要針對海量的非結構化數據,它構築在普通的Linux機器 集群上,可為外部提供高可靠和高並發的存儲訪問。TFS為淘寶提供海量小文件存儲,通常文件大小不超過1M,滿足了淘寶對小文件存儲的需求,被廣泛地應用 在淘寶各項應用中。它采用了HA架構和平滑擴容,保證了整個文件系統的可用性和擴展性。同時扁平化的數據組織結構,可將文件名映射到文件的物理地址,簡化 了文件的訪問流程,一定程度上為TFS提供了良好的讀寫性能。
 
http://blog.csdn.net/wk313753744/article/details/49943835


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM