日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > windows >内容正文

windows

分布式文件系统对比与选型参考

發(fā)布時(shí)間:2025/3/12 windows 75 豆豆
生活随笔 收集整理的這篇文章主要介紹了 分布式文件系统对比与选型参考 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、分布式文件系統(tǒng)

分布式文件系統(tǒng)(Distributed File System)是指文件系統(tǒng)管理的物理存儲(chǔ)資源不一定直接連接在本地節(jié)點(diǎn)上,而是通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)與節(jié)點(diǎn)相連。分布式文件系統(tǒng)的設(shè)計(jì)基于客戶機(jī)/服務(wù)器模式。一個(gè)典型的網(wǎng)絡(luò)可能包括多個(gè)供多用戶訪問(wèn)的服務(wù)器。另外,對(duì)等特性允許一些系統(tǒng)扮演客戶機(jī)和服務(wù)器的雙重角色。例如,用戶可以“發(fā)表”一個(gè)允許其他客戶機(jī)訪問(wèn)的目錄,一旦被訪問(wèn),這個(gè)目錄對(duì)客戶機(jī)來(lái)說(shuō)就像使用本地驅(qū)動(dòng)器一樣。

判斷一個(gè)分布式文件系統(tǒng)是否優(yōu)秀,取決于以下三個(gè)因素:

  • 數(shù)據(jù)的存儲(chǔ)方式,例如有1000萬(wàn)個(gè)數(shù)據(jù)文件,可以在一個(gè)節(jié)點(diǎn)存儲(chǔ)全部數(shù)據(jù)文件,在其他N個(gè)節(jié)點(diǎn)上每個(gè)節(jié)點(diǎn)存儲(chǔ)1000/N萬(wàn)個(gè)數(shù)據(jù)文件作為備份;或者平均分配到N個(gè)節(jié)點(diǎn)上存儲(chǔ),每個(gè)節(jié)點(diǎn)上存儲(chǔ)1000/N萬(wàn)個(gè)數(shù)據(jù)文件。無(wú)論采取何種存儲(chǔ)方式,目的都是為了保證數(shù)據(jù)的存儲(chǔ)安全和方便獲取。
  • 數(shù)據(jù)的讀取速率,包括響應(yīng)用戶讀取數(shù)據(jù)文件的請(qǐng)求、定位數(shù)據(jù)文件所在的節(jié)點(diǎn)、讀取實(shí)際硬盤中數(shù)據(jù)文件的時(shí)間、不同節(jié)點(diǎn)間的數(shù)據(jù)傳輸時(shí)間以及一部分處理器的處理時(shí)間等。各種因素決定了分布式文件系統(tǒng)的用戶體驗(yàn)。即分布式文件系統(tǒng)中數(shù)據(jù)的讀取速率不能與本地文件系統(tǒng)中數(shù)據(jù)的讀取速率相差太大,否則在本地文件系統(tǒng)中打開(kāi)一個(gè)文件需要2秒,而在分布式文件系統(tǒng)中各種因素的影響下用時(shí)超過(guò)10秒,就會(huì)嚴(yán)重影響用戶的使用體驗(yàn)。
  • 數(shù)據(jù)的安全機(jī)制,由于數(shù)據(jù)分散在各個(gè)節(jié)點(diǎn)中,必須要采取冗余、備份、鏡像等方式保證節(jié)點(diǎn)出現(xiàn)故障的情況下,能夠進(jìn)行數(shù)據(jù)的恢復(fù),確保數(shù)據(jù)安全。
  • 二、主流分布式文件系統(tǒng)介紹

    目前主流的分布式文件系統(tǒng)有:GFS、HDFS、Ceph、Lustre、MogileFS、MooseFS、FastDFS、TFS、GridFS等。

    1. GFS(Google File System)

    Google公司為了滿足本公司需求而開(kāi)發(fā)的基于Linux的專有分布式文件系統(tǒng)。盡管Google公布了該系統(tǒng)的一些技術(shù)細(xì)節(jié),但Google并沒(méi)有將該系統(tǒng)的軟件部分作為開(kāi)源軟件發(fā)布。

    2. HDFS(Hadoop Distributed File System)

    Hadoop 實(shí)現(xiàn)了一個(gè)分布式文件系統(tǒng),簡(jiǎn)稱HDFS。Hadoop是Apache Lucene創(chuàng)始人Doug Cutting開(kāi)發(fā)的使用廣泛的文本搜索庫(kù)。它起源于Apache Nutch,后者是一個(gè)開(kāi)源的網(wǎng)絡(luò)搜索引擎,本身也是Luene項(xiàng)目的一部分。Aapche Hadoop架構(gòu)是MapReduce算法的一種開(kāi)源應(yīng)用,是Google開(kāi)創(chuàng)其帝國(guó)的重要基石。

    參考鏈接:

    http://hadoop.apache.org/docs/r2.9.1/hadoop-project-dist/hadoop-hdfs/HdfsDesign.html

    3. Ceph

    是加州大學(xué)圣克魯茲分校的Sage Weil攻讀博士時(shí)開(kāi)發(fā)的分布式文件系統(tǒng)。并使用Ceph完成了他的論文。
    由于 ceph 使用 btrfs 文件系統(tǒng), 而btrfs 文件系統(tǒng)需要 Linux 2.6.34 以上的內(nèi)核才支持。ceph目前還不足夠成熟,它基于的btrfs本身也不成熟,它的官方網(wǎng)站上也明確指出不要把ceph用在生產(chǎn)環(huán)境中。

    參考鏈接:

    https://github.com/ceph/ceph

    https://ceph.com

    4. Lustre

    Lustre是一個(gè)大規(guī)模的、安全可靠的,具備高可用性的集群文件系統(tǒng),它是由SUN公司開(kāi)發(fā)和維護(hù)的。該項(xiàng)目主要的目的就是開(kāi)發(fā)下一代的集群文件系統(tǒng),可以支持超過(guò)10000個(gè)節(jié)點(diǎn),數(shù)以PB的數(shù)據(jù)量存儲(chǔ)系統(tǒng)。目前Lustre已經(jīng)運(yùn)用在一些領(lǐng)域,例如HP SFS產(chǎn)品等。

    參考鏈接:

    http://lustre.org/

    5. MooseFS

    支持FUSE,相對(duì)比較輕量級(jí),對(duì)master服務(wù)器有單點(diǎn)依賴,用perl編寫(xiě),性能相對(duì)較差,國(guó)內(nèi)用的人比較多。

    參考鏈接:

    https://moosefs.com

    https://sourceforge.net/projects/moosefs/?source=directory

    https://www.cnblogs.com/hjc4025/p/9956988.html

    6. MogileFS

    由memcahed的開(kāi)發(fā)公司danga一款perl開(kāi)發(fā)的產(chǎn)品,目前國(guó)內(nèi)使用mogielFS的有圖片托管網(wǎng)站yupoo等。MogileFS是一套高效的文件自動(dòng)備份組件,由Six Apart開(kāi)發(fā),廣泛應(yīng)用在包括LiveJournal等web2.0站點(diǎn)上。

    參考鏈接:

    https://github.com/mogilefs

    7. FastDFS

    是一款類似Google FS的開(kāi)源分布式文件系統(tǒng),是純C語(yǔ)言開(kāi)發(fā)的。FastDFS是一個(gè)開(kāi)源的輕量級(jí)分布式文件系統(tǒng),它對(duì)文件進(jìn)行管理,功能包括:文件存儲(chǔ)、文件同步、文件訪問(wèn)(文件上傳、文件下載)等,解決了大容量存儲(chǔ)和負(fù)載均衡的問(wèn)題。特別適合以文件為載體的在線服務(wù),如相冊(cè)網(wǎng)站、視頻網(wǎng)站等等。

    參考鏈接:

    https://github.com/happyfish100/fastdfs

    https://www.cnblogs.com/shenxm/p/8459292.html

    8. GlusterFS

    開(kāi)源分布式橫向擴(kuò)展文件系統(tǒng),可以根據(jù)存儲(chǔ)需求快速調(diào)配存儲(chǔ),內(nèi)含豐富的自動(dòng)故障轉(zhuǎn)移功能,且擯棄集中元數(shù)據(jù)服務(wù)器的思想。適用于數(shù)據(jù)密集型任務(wù)的可擴(kuò)展網(wǎng)絡(luò)文件系統(tǒng),具有可擴(kuò)展性、高性能、高可用性等特點(diǎn)。gluster于2011年10月7日被red hat收購(gòu)。

    參考鏈接:

    http://www.gluster.org

    https://blog.csdn.net/liuaigui/article/details/6284551

    9. TFS(Taobao File System)

    TFS是一個(gè)高可擴(kuò)展、高可用、高性能、面向互聯(lián)網(wǎng)服務(wù)的分布式文件系統(tǒng),主要針對(duì)海量的非結(jié)構(gòu)化數(shù)據(jù),它構(gòu)筑在普通的Linux機(jī)器 集群上,可為外部提供高可靠和高并發(fā)的存儲(chǔ)訪問(wèn)。TFS為淘寶提供海量小文件存儲(chǔ),通常文件大小不超過(guò)1M,滿足了淘寶對(duì)小文件存儲(chǔ)的需求,被廣泛地應(yīng)用 在淘寶各項(xiàng)應(yīng)用中。它采用了HA架構(gòu)和平滑擴(kuò)容,保證了整個(gè)文件系統(tǒng)的可用性和擴(kuò)展性。同時(shí)扁平化的數(shù)據(jù)組織結(jié)構(gòu),可將文件名映射到文件的物理地址,簡(jiǎn)化 了文件的訪問(wèn)流程,一定程度上為TFS提供了良好的讀寫(xiě)性能。

    參考鏈接:

    http://code.taobao.org/p/tfs/src/

    10. GridFS

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

    參考鏈接:

    https://docs.mongodb.com/manual/core/gridfs

    三、分布式文件系統(tǒng)的對(duì)比

    1. 綜合性對(duì)比

    文件系統(tǒng)開(kāi)發(fā)者開(kāi)發(fā)語(yǔ)言開(kāi)源協(xié)議易用性適用場(chǎng)景特性缺點(diǎn)
    GFSGoogle不開(kāi)源
    HDFSApacheJavaApache安裝簡(jiǎn)單,官方文檔專業(yè)化存儲(chǔ)非常大的文件大數(shù)據(jù)批量讀寫(xiě),吞吐量高;一次寫(xiě)入,多次讀取,順序讀寫(xiě)難以滿足毫秒級(jí)別的低延時(shí)數(shù)據(jù)訪問(wèn);不支持多用戶并發(fā)寫(xiě)相同文件;不適用于大量小文件
    Ceph加州大學(xué)圣克魯茲分校Sage WeilC++LGPL安裝簡(jiǎn)單,官方文檔專業(yè)化單集群的大中小文件分布式,沒(méi)有單點(diǎn)依賴,用C編寫(xiě),性能較好基于不成熟的btrfs,自身也不夠成熟穩(wěn)定,不推薦在生產(chǎn)環(huán)境使用
    LustreSUNCGPL復(fù)雜,而且嚴(yán)重依賴內(nèi)核,需要重新編譯內(nèi)核大文件讀寫(xiě)企業(yè)級(jí)產(chǎn)品,非常龐大,對(duì)內(nèi)核和ext3深度依賴
    MooseFSCore Sp. z o.o.CGPL V3安裝簡(jiǎn)單,官方文檔多,且提供Web界面的方式進(jìn)行管理與監(jiān)控大量小文件讀寫(xiě)比較輕量級(jí),用perl編寫(xiě),國(guó)內(nèi)用的人比較多對(duì)master服務(wù)器有單點(diǎn)依賴,性能相對(duì)較差
    MogileFSDanga InteractivePerlGPL主要用在web領(lǐng)域處理海量小圖片key-value型元文件系統(tǒng);效率相比mooseFS高很多不支持FUSE
    FastDFS國(guó)內(nèi)開(kāi)發(fā)者余慶CGPL V3安裝簡(jiǎn)單,社區(qū)相對(duì)活躍單集群的中小文件系統(tǒng)無(wú)需支持POSIX,降低了系統(tǒng)的復(fù)雜度,處理效率更高;實(shí)現(xiàn)了軟RAID,增強(qiáng)系統(tǒng)的并發(fā)處理能力及數(shù)據(jù)容錯(cuò)恢復(fù)能力;支持主從文件,支持自定義擴(kuò)展名;主備Tracker服務(wù),增強(qiáng)系統(tǒng)的可用性不支持?jǐn)帱c(diǎn)續(xù)傳,不適合大文件存儲(chǔ);不支持POSIX,通用性較低;對(duì)跨公網(wǎng)的文件同步,存在較大延遲,需要應(yīng)用做相應(yīng)的容錯(cuò)策略;同步機(jī)制不支持文件正確性校驗(yàn);通過(guò)API下載,存在單點(diǎn)的性能瓶頸
    GlusterFSZ RESEARCHCGPL V3安裝簡(jiǎn)單,官方文檔專業(yè)化適合大文件,小文件性能還存在很大優(yōu)化空間無(wú)元數(shù)據(jù)服務(wù)器,堆棧式架構(gòu)(基本功能模塊可以進(jìn)行堆棧式組合,實(shí)現(xiàn)強(qiáng)大功能),具有線性橫向擴(kuò)展能力;比mooseFS龐大由于沒(méi)有元數(shù)據(jù)服務(wù)器,因此增加了客戶端的負(fù)載,占用相當(dāng)?shù)腃PU和內(nèi)存;但遍歷文件目錄時(shí),則實(shí)現(xiàn)較為復(fù)雜和低效,需要搜索所有的存儲(chǔ)節(jié)點(diǎn),不建議使用較深的路徑
    TFSAlibabaC++GPL V2安裝復(fù)雜,官方文檔少跨集群的小文件針對(duì)小文件量身定做,隨機(jī)IO性能比較高;實(shí)現(xiàn)了軟RAID,增強(qiáng)系統(tǒng)的并發(fā)處理能力及數(shù)據(jù)容錯(cuò)恢復(fù)能力;支持主備熱倒換,提升系統(tǒng)的可用性;支持主從集群部署,從集群主要提供讀/備功能不適合大文件的存儲(chǔ);不支持POSIX,通用性較低;不支持自定義目錄結(jié)構(gòu)與文件權(quán)限控制;通過(guò)API下載,存在單點(diǎn)的性能瓶頸;官方文檔少,學(xué)習(xí)成本高
    GridFSMongoDBC++安裝簡(jiǎn)單通常用來(lái)處理大文件(超過(guò)16M)可以訪問(wèn)部分文件,而不用向內(nèi)存中加載全部文件,從而保持高性能;文件和元數(shù)據(jù)自動(dòng)同步

    2. 特性對(duì)比

    文件系統(tǒng)數(shù)據(jù)存儲(chǔ)方式集群節(jié)點(diǎn)通訊協(xié)議專用元數(shù)據(jù)存儲(chǔ)點(diǎn)在線擴(kuò)容冗余備份單點(diǎn)故障跨集群同步FUSE掛載訪問(wèn)接口
    HDFS文件私有協(xié)議(TCP)占用MDS支持存在不支持支持不支持POSIX
    Ceph對(duì)象/文件/塊私有協(xié)議(TCP)占用MDS支持支持存在不支持支持POSIX
    Lustre對(duì)象私有協(xié)議(TCP)/ RDAM(遠(yuǎn)程直接訪問(wèn)內(nèi)存)雙MDS支持不支持存在未知支持POSIX/MPI
    MooseFS私有協(xié)議(TCP)占用MFS支持支持存在不支持支持POSIX
    MogileFS文件HTTP占用DB支持不支持存在不支持不支持不支持POSIX
    FastDFS文件/塊私有協(xié)議(TCP)無(wú)支持支持不存在部分支持不支持不支持POSIX
    GlusterFS文件/塊私有協(xié)議(TCP)/RDAM(遠(yuǎn)程直接訪問(wèn)內(nèi)存)無(wú)支持支持不存在支持支持POSIX
    TFS文件私有協(xié)議(TCP)占用NS支持支持存在支持未知不支持POSIX

    什么是POSIX?

    POSIX表示可移植操作系統(tǒng)接口(Portable Operating System Interface of UNIX,縮寫(xiě)為 POSIX ),也就是Unix下應(yīng)用程序共同遵循的一種規(guī)范。支持POSIX的應(yīng)用程序意味著在各個(gè)Unix系統(tǒng)間提供了跨平臺(tái)運(yùn)行的支持。

    四、選型參考

    1. 按特性分類

    適合做通用文件系統(tǒng)的有:Ceph,Lustre,MooseFS,GlusterFS;

    適合做小文件存儲(chǔ)的文件系統(tǒng)有:Ceph,MooseFS,MogileFS,FastDFS,TFS;

    適合做大文件存儲(chǔ)的文件系統(tǒng)有:HDFS,Ceph,Lustre,GlusterFS,GridFS;

    輕量級(jí)文件系統(tǒng)有:MooseFS,FastDFS;

    簡(jiǎn)單易用,用戶數(shù)量活躍的文件系統(tǒng)有:MooseFS,MogileFS,FastDFS,GlusterFS;

    支持FUSE掛載的文件系統(tǒng)有:HDFS,Ceph,Lustre,MooseFS,GlusterFS。

    2. 初步篩選

    考慮到GFS不開(kāi)源,學(xué)習(xí)成本高,且相關(guān)特性資料不全面的情況下,暫時(shí)先不考慮使用GFS;

    Ceph目前不夠成熟穩(wěn)定,很少有使用在生產(chǎn)環(huán)境的案例,暫時(shí)排除;

    Lustre對(duì)內(nèi)核依賴程度過(guò)重,且不易安裝使用,暫時(shí)排除;

    TFS安裝復(fù)雜,且官方文檔少,不利于以后的學(xué)習(xí)使用,暫時(shí)先排除;

    經(jīng)初步篩選剩下的文件系統(tǒng)有:HDFS、MooseFS、MogileFS、FastDFS、GlusterFS、GridFS。

    3. 根據(jù)需求分析進(jìn)一步篩選

    需求

    • 需要搭建一部管理原始憑證的文件系統(tǒng),原始憑證的文件類型主要是小圖片,寫(xiě)操作量少,讀操作量大,且對(duì)安全性要求較高。
    • 隨著系統(tǒng)在使用過(guò)程中數(shù)據(jù)量逐步龐大,圖片的量會(huì)變得繁多,對(duì)圖片讀取速率要求盡可能高但不追求極致(無(wú)需到毫秒級(jí))。
    • 文件系統(tǒng)需要有較完善的冗余備份與容錯(cuò)機(jī)制,功能盡量精簡(jiǎn)耐用,安裝配置應(yīng)簡(jiǎn)單且適合于國(guó)產(chǎn)環(huán)境部署。

    分析

  • 根據(jù)需求,首選需要選擇適合海量小圖片存儲(chǔ)的文件系統(tǒng),適合的文件系統(tǒng)有:MooseFS,MogileFS,FastDFS。
  • 其次需要支持冗余備份,適合的文件系統(tǒng)有:MooseFS、FastDFS、GlusterFS。
  • 符合條件1,2且功能精簡(jiǎn)的文件系統(tǒng)有:FastDFS。
  • 符合條件1,2且功能全面的文件系統(tǒng)有:MooseFS。
  • 總結(jié)

    MooseFS功能較為全面,支持在線擴(kuò)容、冗余備份、FUSE掛載和POSIX訪問(wèn)接口,不支持跨集群同步,存在單點(diǎn)故障,性能相對(duì)較差。

    FastDFS功能精簡(jiǎn),支持在線擴(kuò)容、冗余備份,部分支持跨集群同步,不支持FUSE掛載和POSIX訪問(wèn)接口,不存在單點(diǎn)故障,性能較好。

    提供的建議選型參考為FastDFS或MooseFS,可根據(jù)需求的細(xì)化進(jìn)一步分析選取。

    備注:此選型參考提供的是分布式文件系統(tǒng)的選型建議,根據(jù)系統(tǒng)需求也可選擇NFS等其他更合適的文件系統(tǒng)類型;此選型參考僅局限于分析范圍內(nèi)的文件系統(tǒng),仍然有其他類型的文件系統(tǒng)可能是更好的選擇;此選型參考中沒(méi)有確切的性能測(cè)試數(shù)據(jù)作為對(duì)比,無(wú)法提供性能方面的精確比較。

    五、參考文獻(xiàn)

    開(kāi)源分布式存儲(chǔ)系統(tǒng)的對(duì)比 [http://my.525.life/article?id=1510739742054]

    分布式文件系統(tǒng)MFS、Ceph、GlusterFS、Lustre的對(duì)比 [https://www.cnblogs.com/zhiguo/p/3334993.html]

    使用 FUSE 開(kāi)發(fā)自己的文件系統(tǒng) [https://www.ibm.com/developerworks/cn/linux/l-fuse]

    創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

    總結(jié)

    以上是生活随笔為你收集整理的分布式文件系统对比与选型参考的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。