智能計算平臺應用開發(fā)(初級)-數據存儲-分布式文件系統(tǒng)_第1頁
智能計算平臺應用開發(fā)(初級)-數據存儲-分布式文件系統(tǒng)_第2頁
智能計算平臺應用開發(fā)(初級)-數據存儲-分布式文件系統(tǒng)_第3頁
智能計算平臺應用開發(fā)(初級)-數據存儲-分布式文件系統(tǒng)_第4頁
智能計算平臺應用開發(fā)(初級)-數據存儲-分布式文件系統(tǒng)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第6章數據存儲分布式文件系統(tǒng)云存儲配置數據庫數據庫可視化工具文件系統(tǒng)簡介文件文件是文件系統(tǒng)用來管理存儲空間的數據以某種特定的組織方式構成的數據集合。元數據(Metadata)是保存文件屬性的數據,如文件名、文件長度、文件所屬用戶組和文件存儲位置等。文件系統(tǒng)簡介文件系統(tǒng)一種存儲和組織計算機數據的方法,能使訪問和查找變得容易。傳統(tǒng)文件系統(tǒng)基于數據存儲塊進行操作,數據塊(Block)是存儲文件的最小單元。數據塊對存儲介質劃分了固定的區(qū)域,使用時按這些區(qū)域分配使用。用于管理和組織保存在磁盤驅動器上的數據的系統(tǒng)軟件,是操作系統(tǒng)的重要構成部分。文件系統(tǒng)簡介文件系統(tǒng)將文件組織成樹結構的形式進行管理,通過抽象化自身管理的存儲資源對外提供統(tǒng)一的訪問接口,并對用戶屏蔽具體的實現(xiàn)細節(jié)。文件系統(tǒng)按照底層數據存儲結構和管理范圍的不同的劃分本地文件系統(tǒng)(LocalFileSystem)分布式文件系統(tǒng)(DistributedFileSystem)分布式與文件系統(tǒng)——分布式分布式移動互聯(lián)網在迅猛發(fā)展,移動端的網絡應用每天產生海量的文本、圖片、音視頻等小容量文件,傳統(tǒng)的文件存儲方式已經不能滿足當前系統(tǒng)對于存儲空間和訪問效率的要求。分布式指的是文件、數據被切塊分散存儲到不同存儲節(jié)點的每一塊硬盤上。當前的分布式文件存儲系統(tǒng)大多對文件進行分片存儲,并會對文件元數據進行集中管理,這種存儲方式可以對大文件實現(xiàn)高效存儲,但是用于小文件存儲時,會存在元數據服務器容量受限、訪問效率低下和存儲資源利用率不高等問題。分布式與文件系統(tǒng)——分布式文件系統(tǒng)的概念常見的分布式文件系統(tǒng)一般基于客戶端與服務端(C/S)模式進行設計包括多個供用戶訪問的服務器和供用戶調用的客戶端服務器之間的對等特性允許一些服務器扮演客戶端和服務端的雙重角色。分布式文件系統(tǒng)(DistributedFileSystem)指文件系統(tǒng)管理的物理存儲資源通過計算機網絡互連的服務器集群,而不一定直接連接在本地節(jié)點上,服務器之間可以相互通信與協(xié)調,從而構成一個可以共享存儲空間的大規(guī)模系統(tǒng)。分布式與文件系統(tǒng)——分布式文件系統(tǒng)的基本架構基本架構盡管分布式文件系統(tǒng)的種類很多,但分布式文件系統(tǒng)一般都會采用M/S架構。分布式文件系統(tǒng)一般由控制服務器、存儲服務器和客戶端3個部分構成??刂品掌髦饕撠熣麄€分布式文件系統(tǒng)的管理、調度和控制等。存儲服務器通常有多臺;用于數據的存儲與備份??蛻舳耸怯脩羰褂玫囊欢耍挥脩敉ㄟ^客戶端對分布式文件系統(tǒng)內的數據進行存儲和訪問。分布式與文件系統(tǒng)——分布式文件系統(tǒng)的基本架構分布式文件系統(tǒng)在吞吐量、I/O性能方面具有較強的優(yōu)勢,并且有良好的擴展性。分布式文件系統(tǒng)將多個存儲服務器的存儲資源進行統(tǒng)一管理和整合,組織成一個整體,統(tǒng)一對外提供聚合的存儲容量和I/O帶寬。分布式文件系統(tǒng)利用控制服務器定位數據所在的存儲節(jié)點,然后將數據存儲節(jié)點的地址返回給客戶端,提高了系統(tǒng)的整體可用性、可靠性和擴展性。分布式與文件系統(tǒng)——分布式文件系統(tǒng)的基本架構市場普及率最高的、典型的數據密集型分布式應用——搜索引擎搜索引擎系統(tǒng)性能若僅僅依賴本地文件系統(tǒng)的基本功能,是遠遠無法滿足海量用戶的訪問需求的因此,為提高響應速度,搜索引擎均采用分布式文件系統(tǒng)進行數據存儲。分布式與文件系統(tǒng)——分布式文件系統(tǒng)分布式應用的快速推廣與普及對分布式文件系統(tǒng)的發(fā)展方向起到重要影響,不同類型的分布式應用的特征各異,導致分布式應用分布式文件系統(tǒng)的性能需求不同。當前分布式文件系統(tǒng)大部分是針對特定的應用類型進行設計。例如,常見的分布式文件系統(tǒng)分布式文件系統(tǒng)說明GFS均是針對搜索引擎的應用需求進行設計的分布式文件系統(tǒng);GFS和HDFS針對大量MapReduce分布式計算的使用場景,對大文件存儲做了專門優(yōu)化。HDFS(Apache開發(fā)的開源分布式文件系統(tǒng))FastDFS為滿足海量圖片的高效存儲需求進行設計,適合存儲小文件。常見的分布式文件系統(tǒng)——GFS的簡介GFS是由Google公司進行設計開發(fā)的高性能分布式文件存儲系統(tǒng),用于滿足Google迅速增長的數據存儲和處理需求,由許多廉價易損的普通組件組成,具有較好的容錯性和可擴展性。Google根據公司的實際應用場景及業(yè)務需求,對傳統(tǒng)的分布式文件系統(tǒng)的設計思想進行針對性的改進。在GFS中,組件失效是一種常態(tài),需要迅速地偵測、冗余并恢復那些失效的組件。GFS針對大文件存儲進行設計,保證多用戶并發(fā)操作時數據追加的原子性。常見的分布式文件系統(tǒng)——GFS的系統(tǒng)架構GFS集群由3個角色構成??刂乒?jié)點(Master);數據塊節(jié)點(ChunkServer);客戶端(Client)。常見的分布式文件系統(tǒng)——GFS的系統(tǒng)架構控制節(jié)點負責存儲管理文件元數據以及協(xié)調系統(tǒng)整體活動。數據塊節(jié)點用于存儲并維護文件分割之后產生的數據塊(Chunk);支持客戶端讀寫文件數據。客戶端向控制節(jié)點請求元數據;根據元數據的信息訪問對應數據塊節(jié)點上的文件數據。常見的分布式文件系統(tǒng)——GFS的系統(tǒng)架構每個數據塊的大小是固定的,一般為64MB。每個數據塊有一個全局唯一、不變的64位ID標識,稱為chunk-handle,chunk-handle是在數據塊創(chuàng)建時由控制節(jié)點分配的。每個數據塊以普通Linux文件的形式存儲在數據塊服務器上。GFS中會存儲數據塊的多個副本,副本數默認為3,但可以通過修改配置文件進行設置。GFS將文件分割成的若干數據塊(Chunk)常見的分布式文件系統(tǒng)——GFS的系統(tǒng)架構元數據包括命名空間、文件、Block的映射關系(文件包括哪些Block)和每個Block副本的存放位置等信息,還需加入額外的描述信息,用來校驗??刂乒?jié)點負責系統(tǒng)整體的管理與協(xié)調工作,如租約管理、孤兒塊的垃圾收集和數據塊服務器之間的塊轉移??刂乒?jié)點以心跳的方式與系統(tǒng)內的每一個數據塊服務器進行通信,發(fā)送指令并獲取狀態(tài)信息??刂乒?jié)點:存儲并維護GFS系統(tǒng)中的所有元數據常見的分布式文件系統(tǒng)——GFS的系統(tǒng)架構用戶通過客戶端與控制節(jié)點、數據塊服務器進行交互??蛻舳伺c控制節(jié)點之間僅是進行元數據的訪問操作。客戶端與數據塊服務器之間進行文件塊的讀寫。客戶端常見的分布式文件系統(tǒng)——GFS的系統(tǒng)架構客戶端與控制節(jié)點、數據塊服務器的交互過程在客戶端與數據塊服務器之間的交互過程中才有數據信息。當用戶應用程序需要讀取某個特定文件的數據時,因為數據塊是定長的,所以客戶端可以計算出這段數據跨越了幾個數據塊。客戶端將文件名和需要的數據塊索引發(fā)送給控制節(jié)點,控制節(jié)點根據文件名查找命名空間和文件與Chunk的映射表,得到數據塊副本的存儲位置,然后將數據塊的chunk-handle和所有副本的存儲位置返回給客戶端。客戶端根據一定的選擇策略選取一個副本,然后與副本所在的數據塊服務器建立連接,索取所需要的數據,數據塊服務器將文件數據發(fā)送給客戶端。常見的分布式文件系統(tǒng)——HDFS的簡介HDFS是Apache軟件基金會根據GFS的論文概念模型設計實現(xiàn)的開源分布式文件系統(tǒng),用于作為Hadoop的存儲系統(tǒng)。HDFS作為GFS的一個最重要的實現(xiàn),與GFS的設計目標高度一致。常見的分布式文件系統(tǒng)——HDFS的系統(tǒng)架構HDFS系統(tǒng)架構整體由NameNode節(jié)點、DataNode節(jié)點和客戶端3個角色構成。常見的分布式文件系統(tǒng)——HDFS的系統(tǒng)架構NameNode中心服務器;NameNode節(jié)點保存分布式系統(tǒng)中與DataNode節(jié)點相關的信息;負責管理文件系統(tǒng)的NameSpace和客戶端對文件的訪問。主要包括:DataNode節(jié)點的位置信息DataNode節(jié)點k的數據信息各副本的位置信息常見的分布式文件系統(tǒng)——HDFS的系統(tǒng)架構DataNode用于保存系統(tǒng)中的文件數據;每個DataNode節(jié)點將存儲空間分割為大小為64MB的數據塊(Block),文件數據就存儲在這些數據塊中;DataNode與數據塊之間的對應信息,以元數據的形式保存在NameNode上。HDFS采用一定的副本策略,將多個副本分配至不同的DataNode節(jié)點,而NameNode節(jié)點中保存了這些映射信息,使HDFS更具可靠性。常見的分布式文件系統(tǒng)——HDFS的系統(tǒng)架構應用程序通過客戶端將要訪問的數據塊信息發(fā)送到NameNode節(jié)點NameNode節(jié)點通過查詢相應的元數據信息,獲取數據塊和DataNode之間的對應關系查找到具體存儲數據塊的DataNode節(jié)點,將DataNode信息發(fā)送至客戶端??蛻舳私邮盏絅ameNode節(jié)點發(fā)送的信息,訪問對應的DataNode節(jié)點,從而對元數據進行讀寫操作??蛻舳耸菓贸绦蛟L問元數據的代理。過程常見的分布式文件系統(tǒng)——FastDFS的簡介FastDFS是一款輕量級、開源的分布式文件存儲系統(tǒng),由前淘寶架構師余慶開發(fā)。FastDFS專門針對互聯(lián)網應用進行設計,主要用于存儲海量小文件。FastDFS主要功能文件存儲文件刪除文件上傳下載…FastDFS應用場景圖片網站視頻網站…常見的分布式文件系統(tǒng)——FastDFS的系統(tǒng)架構FastDFS包含3個角色??蛻舳耍–lient);跟蹤服務器(Tracker);存儲服務器(StorageServer)。常見的分布式文件系統(tǒng)——FastDFS的系統(tǒng)架構FastDFS支持動態(tài)擴容Tracker和StorageServer都至少包含一臺服務器。在系統(tǒng)運行過程中服務器可以隨時加入Tracker或StorageServer所在的集群,而不影響系統(tǒng)中其他原有服務器的正常運行。常見的分布式文件系統(tǒng)——FastDFS的系統(tǒng)架構在FastDFS中,存儲服務器被劃分為多個分組(Group)不同分組中存儲的文件相互獨立,所有分組一起對外提供完整的文件存取服務。每個分組由一臺或多臺存儲服務器構成,同一分組中的存儲服務器之間為對等關系,存儲的文件是相同的,它們互為冗余備份并可以分擔負載。當有新的存儲服務器加入分組時,分組中原有的存儲服務器會將已經存在的文件同步至新加入的服務器,同步完成后系統(tǒng)會將該服務器的狀態(tài)改為在線,此時新加入的服務器便可對外提供存儲服務了。常見的分布式文件系統(tǒng)——FastDFS的系統(tǒng)架構FastDFS系統(tǒng)容量FastDFS系統(tǒng)的整體容量等于各分組容量之和。由于分組中的各個存儲服務器互為全冗余,因此單個分組的容量等于該分組中存儲空間最小的那臺存儲服務器的容量。在FastDFS中,當系統(tǒng)存儲容量不足時,可以通過增加分組的方式進行橫向擴容。常見的分布式文件系統(tǒng)——FastDFS的系統(tǒng)架構文件上傳過程常見的分布式文件系統(tǒng)——FastDFS的系統(tǒng)架構文件上傳過程客戶端將上傳請求發(fā)送至TrackerTracker選取可用的存儲服務器Tracker將相應信息返回給客戶端客戶端收到信息后直接與相應的存儲服務器建立連接,進行文件上傳上傳完成后存儲服務器會生成一個文件標識符并返回給客戶端Tracker通過查詢各StorageServer的狀態(tài)信息并根據一定的負載均衡策略選取可用的存儲服務器。之后執(zhí)行下載操作時需要使

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論