「最強科普」什麼是文件系統,分布文件系統有哪幾類?

2020-12-05 了不起的雲計算

上一期的文章我們講述了《什麼是分布式存儲》,接下來這期我們來學習下分布式文件系統。

公司的技術大拿正在給新員工做技術培訓:"大家都用過電腦,相信都知道什麼是文件系統。"

"什麼是文件系統?" 新員工蛋蛋不合時宜的插嘴道。

小夥伴們被蛋蛋的勇氣驚呆了。

▉ 什麼是文件系統?

技術大拿眉頭皺了皺,忍住快要爆發的情緒。解釋到:

"數據是以二進位的方式存儲在介質中的,但是我們並不能直接理解這些高低電平的數據代表什麼意思,而文件系統就是告訴我們這些二進位的數據要表達的意思。"

看著依然緊皺眉頭的蛋蛋並不像搗亂的樣子,技術大拿打開了自己的電腦。

這些文件大家都見過吧,這些文件是怎麼出現的?這就靠文件系統來實現的。文件系統將二進位的數據按照人類可理解的架構來解析出來,我們可以通過這個系統來管理、刪除和複製這些文件,從而來控制存儲裡面的數據。

那麼文件系統是什麼價值?蛋蛋繼續追問到。

▉ 文件系統的價值是什麼?

文件系統是管理磁碟的軟體系統,能夠簡化用戶對磁碟空間的使用,降低使用難度,讓用戶可以更加形象的方式將磁碟中的數據供給我們使用。

打個比方,存儲的磁碟就相當於我們的倉庫。如下圖所示,這是一個很大的空倉庫,這就相當於一個沒有格式化的磁碟,空間很大,讓我們來存儲數據使用。

雖然我們可以直接將數據存儲到磁碟的空間,但是由於缺少規劃,我們數據可能就會毫無規律的存放在磁碟上。不但放的數據比較少,而且當我們想查找的時候也會非常費勁,甚至找不到需要的數據。

因此,文件系統出現了。一方面將數據進行統一管理,另一方面讓我們用戶能夠更好的查到數據。

就好比我們倉庫中的貨架,我們可以將貨物進行統一的規劃和管理,這樣我們就能按照編號快速的找到我們需要的數據,不僅存放的數據多,而且查找起來也更方便。

文件系統就相當於管理貨物的貨架和人的集合,讓我們不再為存儲數據擔心,方便我們管理和查找數據。

看著眉頭舒展開的蛋蛋,技術大拿知道可以接下往下進行了。

▉ 本地文件系統和網絡文件系統

文件系統早期是本地作業系統管理存儲設備的一種方式,早期的管理需求大多基於本地的文件管理,比如Ext4 、XFS、FAT32和Btrfs等文件系統,這些文件系統之後能提供本地磁碟格式化並使用。

但是隨著傳輸技術的發展,人們開始有了新的需求,不止限於本地文件的傳輸I/O技術,人們也開始對遠程數據傳輸有了需求,人們希望通過TCP/IP方式獲取數據,就相當於增加了一種可以遠距離傳輸的I/O技術,例如我們的文件共享需求。

目前主流的接入協議有NFS協議為代表的Linux陣營和以CIFS/SMB協議為代表的Windows產品陣營。不過隨著技術的發展,基本上可以通用了。

支持遠程訪問的文件系統解決了資源共享的問題,但是這些文件系統雖然能夠支持多個客戶端訪問,但是畢竟是單機,處理能力有限,因大規模的數據訪問領域,例如電商網站,大數據處理,採用NFS這種訪問方式就無法滿足需求。

於是,為了可以讓多臺機器上的多用戶通過網絡分享文件和存儲空間,於是就出現了分布式文件系統,該文件系統的服務端通過一個集群來實現,客戶端可以並發的訪問該集群的多達數萬個節點,因此承載能力得到極大的提升。

對應上面的倉庫比喻,我們可以簡單理解為:在倉庫的初期,管理更多的是基於本地的需求,這個時候採用的文件系統是Ext4、XFS、FAT32和Btrfs等,這些系統只支持本地訪問。

但是隨著傳輸技術的發展,人們希望通過網絡來訪問這個存儲倉庫,於是NFS、CIFS/SMB開始出現。但是這些文件系統在的支持遠程訪問的個數有限,於是就出現了分布式文件存儲。

本地文件系統、網絡文件系統和分布式分揀系統這幾種文件系統沒有本質的差別。只是網絡連接的可靠性複雜性等因素,相對於本地總線而言,分布式文件系統接入的存儲設備,需要應用層做更多複雜的策略來配合達到相同的效果。

▉ 主流分布式文件系統

隨著數位化轉型的深入,海量數據對存儲系統提出了新的要求,市場上出現了多種分布式存文件系統。如HDFS、Ceph、GFS、GPFS、Swift等。在實際工作中,為了更好地引入分布式文件系統,我們需了解各種文件系統的特點,以及各種技術的適用場景,下面分別介紹:

中間控制節點架構(HDFS)

HDFS是一個高度容錯性的系統,適合部署在廉價的機器上。HDFS能提供高吞吐量的數據訪問,非常適合大規模數據集上的應用。HDFS放寬了一部分POSIX約束,來實現流式讀取文件系統數據的目的。

HDFS是Hadoop大數據架構中的存儲組件。在開始設計的時候,HDFS就已經明確的它的應用場景,就是為大數據服務。主要的應用場景有:

1、對大文件存儲的性能比較高,例如幾百兆,幾個G的大文件;

2、適合低寫入,多次讀取的業務;

3、HDFS採用多副本數據保護機制,使用普通的X86伺服器就可以保障數據的可靠性,不推薦在虛擬化環境中使用;

圖 HDFS簡化架構圖示意圖

完全無中心架構---計算模式(Ceph)

Ceph是一個開源的存儲項目,是目前應用最廣泛的開源分布式存儲系統,已得到眾多廠商的支持,許多超融合系統的分布式存儲都是基於Ceph深度定製。而且Ceph已經成為Linux系統和OpenStack的"標配",用於支持各自的存儲系統。

圖 Ceph簡化架構圖示意圖

Ceph可以提供對象存儲、塊設備存儲和文件系統存儲服務。同時支持三種不同類型的存儲服務的特性,在分布式存儲系統中,是很少見的。

Ceph沒有採用HDFS的元數據尋址的方案,而且採用CRUSH算法,數據分布均衡,並行度高。而且在支持塊存儲特性上,數據可以具有強一致性,可以獲得傳統集中式存儲的使用體驗。

但是目前Ceph支持文件的性能相比其他分布式存儲系統,部署稍顯複雜,性能也稍弱,一般都將Ceph應用於塊和對象存儲。

Ceph是去中心化的分布式解決方案,需要提前做好規劃設計,對技術團隊的能力要求比較高。

完全無中心架構---一致性哈希(Swift)

Swift最初是由 Rackspace 公司開發的高可用分布式對象存儲服務,並於 2010 年貢獻給 OpenStack 開源社區作為其最初的核心子項目之一,為其 Nova 子項目提供虛機鏡像存儲服務。

Swift 構築在比較便宜的標準硬體存儲基礎設施之上,無需採用 RAID(磁碟冗餘陣列),通過在軟體層面引入一致性散列技術和數據冗餘性,犧牲一定程度的數據一致性來達到高可用性和可伸縮性,支持多租戶模式、容器和對象讀寫操作,適合解決網際網路的應用場景下非結構化數據存儲問題。

圖 Swift簡化架構圖示意圖

Swift和Ceph提供的對象存儲服務類似。Swift主要用於解決非結構化數據存儲問。它和Ceph的對象存儲服務的主要區別是:

1、客戶端在訪問對象存儲系統服務時,Swift要求客戶端必須訪問Swift網關才能獲得數據。而Ceph使用一個運行在每個存儲節點上的OSD(對象存儲設備)獲取數據信息,沒有一個單獨的入口點,比Swift更靈活一些;

2、在數據一致性方面,Swift的數據是最終一致,在海量數據的處理效率上要高一些,但是主要面向對數據一致性要求不高,但是對數據處理效率要求比較高的對象存儲業務。而Ceph是始終跨集群強一致性。主要的應用場景,在在OpenStack中,對象存儲服務使用的就是Swift,而不是Ceph;

除了上述HDFS、CEPH和Swift等分布式文件系統外,還有GlusterFS、CephFS等很多分布式文件系統,不同的文件系統解決的問題是不同的,因此應用場景也是有很大差異的。因此,大家在工作中如果選型時,也需要考慮這些差異。每種分布式文件系統的細節又有所差異,這個也是與它們所要解決的具體問題相關的。

▉ 未完待續……

雖然分布式文件系統可以處理高並發訪問的問題,但對於同一個文件同時寫會存在數據不一致的問題。

為了解決同一個文件被不同客戶端的應用並發寫的問題,這個時候就出現了集群文件系統。

接下來的文章我們將繼續介紹《分布式和集群的區別》

——END——

文章內容部分來源於網絡,侵刪!

相關焦點

  • 下載網頁資源、跨設備互傳文件,這才是 iOS 最強文件管理工具
    一直以來,由於 iOS 系統的封閉性,在 iPhone 上瀏覽不同來源的文件這個需求一直無法藉助原生系統得到滿足,第三方應用的出現解決了這個痛點,知名開發商 Readdle 就為我們帶來了一款文件管理工具:Documents。
  • iOS13屏蔽系統更新方法來了 沒有描述文件之前的最好辦法!
    由於之前的「iOS13屏蔽更新描述文件」於2020年1月30日過期失效了(iOS12.1以下版本不受影響),以至於很多之前安裝了屏蔽系統更新的果粉用戶今年又開始不斷接受到系統推送彈窗提醒和後臺自動下載更新固件的煩惱!
  • iOS13Beta2描述文件在哪下 iOS13開發者測試版描述文件及固件下載...
    iOS13Beta2描述文件在哪下 iOS13開發者測試版描述文件及固件下載地址 北京時間今天凌晨,蘋果發布了 iOS 13 和 iPadOS 等多個系統的開發者預覽版更新,這距離第一個測試版發布僅相隔
  • IPFS紅岸智能周雪松:分布式文件系統
    紅岸智能 周雪松新系列知識點針對這幾種不同的數據類型,分布式存儲系統適合處理不同的類型的數據,將分布式存儲系統劃分為以下幾種:分布式文件系統:>處理非結構化的數據,將非結構化的數據都當做文件形式的存儲對象,處理對象是文件,形成一個分布式文件系統。
  • Android系統APK文件詳解
    什麼是apkAPK是Android Package的縮寫,即Android安裝包。APK是類似Symbian Sis或Sisx的文件格式。通過將APK文件直接傳到Android模擬器或Android手機中執行即可安裝。
  • 電腦怎麼隱藏文件夾? 手把手教你如何隱藏電腦文件夾
    電腦怎麼隱藏文件夾? 手把手教你如何隱藏電腦文件夾時間:2017-08-03 19:24   來源:三聯   責任編輯:沫朵 川北在線核心提示:原標題:電腦怎麼隱藏文件夾? 手把手教你如何隱藏電腦文件夾 朋友會向你借電腦,但是電腦上有一些文件又不想讓其他人看到。該怎麼辦呢?
  • 文件系統vs對象存儲——選型和趨勢
    本文轉自:微信公眾號 企事錄,作者李明宇如果我們在服務端存儲文件,例如一個O2O應用中的圖片或者企業級雲盤裡的文檔,以前我們可能會毫不猶豫地把它們放到文件系統裡,比如說NAS設備或者GlusterFS等分布式文件系統,但是,隨著技術的發展,我們有了一個新的選擇——對象存儲,今天我們來討論一下,對象存儲相對於文件系統有什麼特點
  • 如何用 iFile/Filza 安裝 deb 文件?
    如果已有 bigboss 源,可在 Cydia 的搜索中輸入「iFile」或者「Filza」,下載官方正版。
  • JuiceFS 開源,分布式文件系統
    1 月 11 日, Juicedata 果汁數據科技宣布開源分布式文件系統 JuiceFS。
  • 一個照片「隱身衣」,讓微軟曠視人臉識別系統100%失靈|開源
    這代表著你再也不用擔心po在網上的照片被某些軟體扒得乾乾淨淨,打包、分類,幾毛錢一整份賣掉餵AI了。這就是來自芝加哥大學的最新研究:給照片加上一點肉眼看不出來的修改,就能讓你的臉成功「隱形」。從一個包含有許多特定分類標籤的公開人臉數據集中,隨機選取 K 個候選目標類型機器圖像。使用特徵提取器 φ 計算每個類 k=1…K 的特徵空間的中心點,記為 Ck。
  • 蘋果手機文件管理在哪?如何查看蘋果手機文件
    蘋果手機文件管理在哪? 蘋果手機文件管理在哪?
  • InterPlanetary File System星際文件系統
    InterPlanetary File System,縮寫IPFS:是一個旨在創建持久且分布式存儲和共享文件的網絡傳輸協議。它是一種內容可尋址的對等超媒體分發協議。在IPFS網絡中的節點將構成一個分布式文件系統。
  • vivo全新系統OriginOS體驗:高自由度的「平行世界」
    3.一切的一切都源於這個「變形器」,而「平行世界」的概念真的要佩服OriginOS團隊的腦洞,而真正打開「平行世界」後用戶會遇到什麼,全看這一個入口了。4.如果說沒有「平行世界」的概念引入,大家所見到OriginOS無非就是界面觀感大幅提升,但「平行世界」的概念完全把OriginOS提升到了一個全新的層次。
  • 電腦重置系統與重裝系統各是什麼意思?哪一種方式好?答案來了!
    電腦重裝系統我們經常碰到,它是通過系統啟動U盤給電腦重裝系統,這是比較常見的,除此之外,我們應該還聽說過重置系統,這對於一般的朋友來說,可能沒有聽過,也不知道是什麼意思,當然,對於稍微懂一點電腦的朋友來說,他們也常常比較的兩個電腦裝系統的方式哪一種好一點,下面我們就來說一說電腦重置系統與重裝系統的意思與哪一種好
  • 基於TFFS的成像聲吶文件系統設計
    基於Flash文件系統的加載的VxWorks啟動方式如圖 2所示。  2 Flash文件系統  2.1 文件系統比較與選擇  文件系統的選擇與存儲設備的物理特性和系統的要求密切相關。I/O系統、文件系統和塊設備之間的聯繫如圖 3所示。
  • 史上評分最高的谷歌 App,「Files Go」中國特別版正式發布
    極客公園也受邀來到 Google 北京總部,和「Files Go」的產品經理聊了聊這個「中國特別版」到底有哪些不同。「中國特別版」,特別在哪?既然是中國特別版,極客公園今天也採訪了 Files Go 的產品經理,問了問他為什麼會有中國特別版。首先「Files Go」如今有了一個中文名字——「文件極客」。
  • 你的文件系統會影響SSD的性能發揮嗎?
    究竟什麼是文件系統?文件系統的特性和功能應該與其正在使用的設備以及應用程式目標相符合。,  有很多不同的文件系統,但是只有少數與使用基於快閃記憶體的存儲設備的Windows用戶相關的文件系統。FAT32和NTFS可能是Windows世界最流行的文件系統,但事實上還存在很多其他文件系統。
  • 「文件匯總」2020年8月環保文件匯總
    全國投資項目在線審批監管平臺(以下簡稱投資平臺)的審批監管系統是聯接各級政府部門相關信息系統開展並聯審批、電子監察、項目監管、數據分析的工作平臺。各地要準確把握投資平臺的功能和定位,緊密結合各自審批系統的實際情況,大力推進投資平臺與相關審批系統的互聯互通,採取投資平臺與相關審批系統充分交互、由投資平臺提供多方共享的模式,加快實現項目單位一次申報、審批人員一次辦理。
  • Win10系統拒絕訪問字體文件夾怎麼辦?
    但是最近很多小夥伴跟小編說在給自己電腦加入個性化字體的時候都被提示文件夾拒絕訪問,這是什麼問題?這裡小編就給大家帶來了解決方法。win10字體文件夾拒絕訪問怎麼解決:1、右擊此電腦,點擊「管理」。Win10系統拒絕訪問字體文件夾怎麼辦2、依次點擊「系統工具—》本地用戶和組—》用戶」。
  • AVG誤判Windows系統文件為病毒
    因昨日AVG放出的病毒庫更新因病毒籤名不正確,從而導致它把Windows系統文件User32.dll誤認為特洛伊木馬 PSW.Banker4.