大數據處理平臺和技術2數據文件系統_第1頁
大數據處理平臺和技術2數據文件系統_第2頁
大數據處理平臺和技術2數據文件系統_第3頁
大數據處理平臺和技術2數據文件系統_第4頁
大數據處理平臺和技術2數據文件系統_第5頁
已閱讀5頁,還剩40頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、第二章 HDFSHDFS大數據文件系統1第二章 HDFS1.HDFS概述2.HDFS基本構架與數據分布3.HDFS可靠性的設計實現4.HDFS文件操作2(1)HDFS概述 HDFS = Hadoop Distributed File System HDFS是一個使用JAVA實現的、分布式的、可橫向擴展的文件系統 是Hadoop的組件 基于*nix3什么是分布式文件系統?物理層是分布式基于客戶機/服務器模式 通常一個分布式文件系統提供多個供用戶一般都會提供備份和容錯的功能一般都基于操作系統的本地文件系統的服務器- ext3,ext4- NTFS4為什么需要分布式文件系統?傳統文件系統最大的問題是

2、容量和吞吐量的限制多用戶多應用的并行讀寫是分布式文件系統產生的根源一塊硬盤的讀寫性能,比不上多塊硬盤同時讀寫的性能 1 HDD=75MB/sec 1000 HDDs = 75GB/sec擴充空間的成本低廉,可以為分布式計算提供基礎5(2)HDFS的設計目標硬件錯誤是常態 錯誤檢測并快速自動恢復是HDFS的最流式數據 HDFS適合用于處理批量,而不適合隨機大規模的數據集設計目標HDFS適合大量量可以達到的PB、EB級,總HDFS適合大文件,單個文件一般在百MB級以上文件數目適中 簡單的一致模型簡單的一致模型 HDFS的應用程序需要對文件實行 不能修改已寫入的數據寫、多次讀的模式程序采用“數據就近

3、”原則分配節點執行 移動計算比移動數據的代價要低6HDFS適合做什么?并管理PB級數據處理非結構化數據注重數據處理的吞吐量(對延遲不敏感)write-once-read-many存取模式7HDFS不適合做什么?小文件 (不建議使用)大量的隨機讀 (不建議使用)需要對文件的修改 (不支持)8思考題思考 10PB 級別數據如何?在2008年,谷歌每天處理的數據已經達到20 PB,一年就是7300 PB館“在2011年4月前已經收集了235TB的數美國國會據,而一個PB相當于它的4倍!9第二章 HDFS1.HDFS概述2.HDFS基本構架與數據分布3.HDFS可靠性的設計實現4.HDFS文件操作10

4、(1) HDFS基本構架一個HDFS文件系統包括一個主控節點NameNode和一組DataNode從節點HDFS NameNode應用程序文件名或數據塊號HDFS客戶端數據塊號,數據塊位置DataNode數據DataNode數據DataNode數據HDFS文件架構12(2)HDFS文件分布式13舉例: HDFS文件分布式14Block的副本放置策略第1個副本:放置在上傳文件的DN;如果是集群外提交,則隨機挑選一臺磁盤不太滿,CPU不太忙的節點第2個副本:放置在于第一個副本不同的機架的節點上第3個副本:與第二個副本相同集群的節點副本:隨機節點15(3) HDFS設計目標假設:節點失效是常態wri

5、te-once-read-many存取模式不支持文件并發寫入不支持文件修改理想: 1. 任何一個節點失效,不影響HDFS服務 2. HDFS可以自動完成副本的16(4)HDFS主要組件的功能17HDFS文件文件切分成塊(默認大小64M),以塊為,每個塊有多個副本在不同的上,副本數可在文件生成時指定(默認3)NameNode是主節點,文件的元數據如文件名,文件目錄結構,文件屬性(生成時間,副本數,文件權限),以及每個文件的塊列表以及塊所在的DataNode等等DataNode在本地文件系統的校驗文件塊數據,以及塊數據18NameNode節點Namenode是一個中心服務器,單一節點,負責管理文件

6、系統的名字空間(namespace)以及客戶端對文件的文件操作,NameNode負責文件元數據的操作,DataNode負責處理文件內容的讀寫請求,數據流不經過NameNode,只會詢問它跟那個DataNode副本存放在那些DataNode上由NameNode來,根據全局情況做出文件時NameNode盡量讓用戶先時延塊放置決定,降低塊消耗和最近的副本,Namenode全權管理數據塊的,它周期性地從集群中的每個Datanode接收心跳信號和塊狀態報告(Blockreport)。接收到心跳信號意味著該Datanode節點工作正常。塊狀態報告包含了一個該Datanode上所有數據塊的列表19NameN

7、ode(NN) 節點MetaData物理結構塊結構20DataNode節點一個數據塊在DataNode以文件在磁盤上,包括兩個文件,一個是數據本身,一個是元數據包括數據塊的長度,塊數據的校驗和,以及時間戳DataNode啟動后向NameNodeNameNode上報所有的塊信息。,通過后,周期性(1小時)的向心跳是每3秒一次,心跳返回結果帶有NameNode給該DataNode令如塊數據到另一臺,或刪除某個數據塊。如果超過10分鐘沒有收到某個DataNode 的心跳,則認為該節點不可用。集群運行中可以安全加入和一些21DataNode(DN)節點保存Block啟動DN線程的時候會向NN匯報blo

8、ck信息通過向NN心跳保持與其(3秒一次),如果NN 10分鐘沒有收到DN的心跳,則認為其已經lost,并copy其上的block到其它DN22Secondary Namenode通過檢查點(Checkpoint)更新映像文件,SecondaryNamanode輔助完成處理23(5)HDFS數據過程24HDFS數據寫入過程(3)25第二章 HDFS1.HDFS概述2.HDFS基本構架與數據分布3.HDFS可靠性的設計實現4.HDFS文件操作26HDFS可靠性的設計實現安全模式 剛啟動的時候,等待每一個DataNode報告情況,安全模式的時候才進行副本操作SecondaryNameNode Na

9、meNode失效怎么辦? 用來備份NameNode的元數據,以便在NameNode失效時能從SecondaryNameNode恢復出NameNode上的元數據心跳副本重新創建 一個DataNode了怎么辦? Hearbeat和副本重建27HDFS可靠性的設計實現數據一致性 網絡傳輸中,數據改變了怎么辦? 數據校驗和CheckSum機制租約多個用戶同時寫一個文件怎么辦?NameNode租約給客戶端版本升級出錯了怎么辦?到前一個版本28第二章 HDFS1.HDFS概述2.HDFS基本構架與數據分布3.HDFS可靠性的設計實現4.HDFS文件操作29HDFS文件操作命令行方式API方式30HDFS文

10、件操作使用hadoop dfs命令對HDFS進行操作$ hadoop dfs -ls注意,hadoop沒有當前目錄的概念,也沒有cd命令在HDFS創建目錄 $ hadoop dfs -mkdir ./test1上傳文件到HDFS使用hadoop dfs -put命令對HDFS進行上傳操作$ hadoop dfs -put os_filename hadoop_filename在Master上在Slave上32將HDFS的文件到本地使用hadoop dfs -get命令HDFS文件$ hadoop dfs -get hadoop_filename os_filename使用hadoop dfs

11、-cat命令對HDFS文件進行查看33刪除HDFS下的文檔使用hadoop dfs -rmr命令對HDFS文件進行刪除$ hadoop dfs -rmr hadoop_filename34查看HDFS基本統計信息使用hadoop dfsadmin命令管理HDFS$ hadoop dfsadmin -report35進入和安全模式手工進入安全模式進行安全塊的檢查使用hadoop dfsadmin safemode進入和安全模式$ hadoop dfsadmin -safemode -enter$ hadoop dfsadmin -safemode leave36怎樣添加節點?在新節點安裝好had

12、oop把namenode的有關配置文件到該節點修改masters和slaves文件,增加該節點設置ssh免進出該節點單獨啟動該節點上的datanode和tasktracker(hadoop-daemon.sh start datanode/tasktracker)運行start-balancer.sh進行數據負載均衡37啟動某些特定進程而非所有進程start-all.sh的內容38負載均衡作用:當節點出現故障或新增節點時,數據塊分布可能不均勻,負載均衡可以重新平衡各個datanode上數據塊 的分布39使用Hadoop歸檔文件Hadoop歸檔文件和HAR文件是可以將文件高效地放入HDFS塊中的文件存檔設備減少NameNode內存使用,同時仍然對文件進行透明通過archive命令工具根據文件集合創建, 例如: $ hadoop archive archiveName fil

溫馨提示

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

評論

0/150

提交評論