FastDFS介紹

     FastDFS是一個開源的輕量級分佈式文件系統,它對文件進行管理,功能包括:文件存儲、文件同步、文件訪問(文件上傳、文件下載)等,解決了大容量存儲和負載均衡的問題。特別適合以文件爲載體的在線服務,如相冊網站、視頻網站等等。
     FastDFS服務端有兩個角色:跟蹤器(tracker)和存儲節點(storage)。跟蹤器主要做調度工作,在訪問上起負載均衡的作用。
存儲節 點存儲文件,完成文件管理的所有功能:存儲、同步和提供存取接口,FastDFS同時對文件的metadata進行管理。所謂文件的meta data就是文件的相關屬性,以鍵值對(key valuepair)方式表示,如:width=1024,其中的key爲width,value爲1024。文件metadata是文件屬性列表,可以包含多個鍵值對。
     跟蹤器和存儲節點都可以由一臺或多臺服務器構成。跟蹤器和存儲節點中的服務器均可以隨時增加或下線而不會影響線上服務。其中跟蹤器中的所有服務器都是對等的,可以根據服務器的壓力情況隨時增加或減少。
爲了支持大容量,存儲節點(服務器)採用了分卷(或分組)的組織方式。存儲系統由一個或多個卷組成,卷與卷之間的文件是相互獨立的,所有卷的文件容量累加就是整個存儲系統中的文件容量。一個卷可以由一臺或多臺存儲服務器組成,一個卷下的存儲服務器中的文件都是相同的,卷中的多臺存儲服務器起到了冗餘備份和負載均衡的作用。
     在卷中增加服務器時,同步已有的文件由系統自動完成,同步完成後,系統自動將新增服務器切換到線上提供服務。
     當存儲空間不足或即將耗盡時,可以動態添加捲。只需要增加一臺或多臺服務器,並將它們配置爲一個新的卷,這樣就擴大了存儲系統的容量。

wKioL1llkzTyOqMAAAMhc1zZxWc371.png

wKiom1llkzWwdWhpAAGgy0E420M641.png

wKioL1llkzXhsYNoAAHNYS09W9A265.png

wKiom1llkzajO5wEAAHFetfRiGo667.png


FastDFS特點:

 

   FastDFS主要解決了大容量的文件(主要是圖片、視頻、音頻等小文件)存儲和高併發訪問的問題,並在文件存取時實現了負載均衡。與其它類GFS系統相比,FastDFS最大的特點在於它是一個輕量級的系統,體現在以下幾個方面。

首先,FastDFS的結構比 較簡單,主要由Client、Tracker server和Storage server三部分組成。Client通過Tracker server得到Storage server的信息,然後直接與Storage server通信訪問文件,避免了Tracker server成爲瓶頸。

   第二,FastDFS不對文件進行分塊存儲,與支持文件分塊存儲的DFS相比,更加簡潔高效。

   第三,FastDFS中的文件ID是由Storage server生成後返回給客戶端的。文件ID中包含了組號、文件相對路徑和文件名等(文件ID中還包含文件大小、時間戳、源Storage server IP地址、文件內容校驗碼、隨機數等),client可以根據文件ID直接定位到文件所在的組(但具體通過哪個Storage server下載需要詢問Tracker server根據負載均衡原則指定)。因此FastDFS不需要存儲文件索引信息。而其他文件系統則通常需要由NameServer存儲文件索引信息,如 mogileFS採用MySQL數據庫來存儲文件索引以及系統相關的信息,而MySQL很容易成爲系統瓶頸。



參考:http://www.it165.net/admin/html/201308/1628.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章