欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報(bào)邀請碼778899分享:hadoop hdfs 大數(shù)據(jù)

柚子快報(bào)邀請碼778899分享:hadoop hdfs 大數(shù)據(jù)

http://yzkb.51969.com/

目錄

一、什么是HDFS

二、HDFS架構(gòu)角色

三、HDFS工作流程

四、HDFS的優(yōu)缺點(diǎn)

一、什么是HDFS

1、定義

HDFS即Hadoop分布式文件系統(tǒng)(Hadoop Distributed Filesystem),以流式數(shù)據(jù)訪問模式來存儲超大文件,它和現(xiàn)有的分布式文件系統(tǒng)有很多共同點(diǎn)。但同時(shí),它和其他的分布式文件系統(tǒng)的區(qū)別也是很明顯的。HDFS是一個(gè)高度容錯(cuò)性的系統(tǒng),適合部署在廉價(jià)的機(jī)器上。HDFS能提供高吞吐量的數(shù)據(jù)訪問,非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用。HDFS放寬了一部分POSIX約束,來實(shí)現(xiàn)流式讀取文件系統(tǒng)數(shù)據(jù)的目的。HDFS在最開始是作為Apache Nutch搜索引擎項(xiàng)目的基礎(chǔ)架構(gòu)而開發(fā)的。

2、特點(diǎn)

① 保存多個(gè)副本,且提供容錯(cuò)機(jī)制,副本丟失或宕機(jī)自動恢復(fù)。默認(rèn)存 3 份。

② 運(yùn)行在廉價(jià)的機(jī)器上。

③ 適合大數(shù)據(jù)的處理。多大?多???HDFS 默認(rèn)會將文件分割成 block,64M 為 1 個(gè) block。然后將block按鍵值對存儲在HDFS上,并將鍵值對的映射存到內(nèi)存中(namenode)。 如果小文件太多,那內(nèi)存的負(fù)擔(dān)會很重。

二、HDFS架構(gòu)角色

個(gè)HDFS集群包含一個(gè)單獨(dú)的NameNode和多個(gè)DataNode。HDFS采用一種稱為rack-aware的策略。Rack1、Rack2....

NameNode:是 Master 節(jié)點(diǎn),是管理者。管理數(shù)據(jù)塊映射;處理客戶端的讀寫請求;配置副本策略;管理 HDFS 的名稱空間;NameNode 保存的 metadata 包括文件 ownership 和 permission文件包含的 block 信息。Block 保存在那些 DataNode 節(jié)點(diǎn)上(數(shù)據(jù)并非保存在 NameNode 磁 盤上的,它是在 DataNode 啟動時(shí)上報(bào)給 NameNode 的,NameNode 接收到之后 將這些信息保存在內(nèi)存中)NameNode 的 metadata 信息在 NameNode 啟動后加載到內(nèi)存中,Metadata 存儲到磁盤上的文件名稱為 fsimage,Block 的位置信息不會保存在 fsimage 中,Edits 文件記錄了客戶端操作 fsimage 的日志,對文件的增刪改等。用戶對 fsimage 的操作不會直接更新到 fsimage 中去,而是記錄在 edits 中。

SecondaryNameNode:分擔(dān) namenode 的工作量;是 NameNode 的冷備份;合并 fsimage 和 fsedits 然后再發(fā)給 namenode。

???? 合并fsimage和fsedits文件,然后發(fā)送并替換NameNode的fsimage文件, 同時(shí)自己留下一個(gè)副本。這個(gè)副本可供 NameNode 毀滅之后的部分文件恢復(fù)。

可以通過配置 fs.checkpoint.period 修改合并間隔時(shí)間,默認(rèn) 1 小時(shí)

也可以通過配置 edits 日志文件的大小,fs.checkpoint.size 規(guī)定 edits 文 件的最大值,來讓 SecondaryNameNode 來知道什么時(shí)候該進(jìn)行合并操作了。 默認(rèn)是 64M

DataNode:Slave 節(jié)點(diǎn),奴隸,干活的。負(fù)責(zé)存儲 client 發(fā)來的數(shù)據(jù)塊 block;執(zhí)行數(shù)據(jù) 塊的讀寫操作。

熱備份:b 是 a 的熱備份,如果 a 壞掉。那么 b 馬上運(yùn)行代替 a 的工作。

冷備份:b 是 a 的冷備份,如果 a 壞掉。那么 b 不能馬上代替 a 工作。但是 b 上存儲 a 的 一些信息,減少 a 壞掉之后的損失。

fsimage:元數(shù)據(jù)鏡像文件(文件系統(tǒng)的目錄樹。)

edits:元數(shù)據(jù)的操作日志(針對文件系統(tǒng)做的修改操作記錄)

namenode 內(nèi)存中存儲的是=fsimage+edits。

SecondaryNameNode 負(fù)責(zé)定時(shí)默認(rèn) 1 小時(shí),從 namenode 上,獲取 fsimage 和 edits 來 進(jìn)行合并,然后再發(fā)送給 namenode。減少 namenode 的工作量。

三、HDFS工作流程

備份數(shù)據(jù)的存放:備份數(shù)據(jù)的存放是HDFS可靠性和性能的關(guān)鍵。HDFS采用一種稱為rack-aware的策略來決定備份數(shù)據(jù)的存放。通過一個(gè)稱為Rack Awareness的過程,NameNode決定每個(gè)DataNode所屬rack id。缺省情況下,一個(gè)block塊會有三個(gè)備份,一個(gè)在NameNode指定的DataNode上,一個(gè)在指定DataNode非同一rack的DataNode上,一個(gè)在指定DataNode同一rack的DataNode上。這種策略綜合考慮了同一rack失效、以及不同rack之間數(shù)據(jù)復(fù)制性能問題。

示例寫入流程:

將 64M 的 block1 按 64k 的 package 劃分;然后將第一個(gè) package 發(fā)送給 host2;host2 接收完后,將第一個(gè) package 發(fā)送給 host1,同時(shí) client 想 host2 發(fā)送第 二個(gè) package;host1 接收完第一個(gè) package 后,發(fā)送給 host3,同時(shí)接收 host2 發(fā)來的第二個(gè) package。以此類推,如圖紅線實(shí)線所示,直到將 block1 發(fā)送完畢。host2,host1,host3向NameNode,host2向Client發(fā)送通知,說“消息發(fā)送完了”。 如圖粉紅顏色實(shí)線所示。client 收到 host2 發(fā)來的消息后,向 namenode 發(fā)送消息,說我寫完了。這樣就 真完成了。如圖黃色粗實(shí)線發(fā)送完 block1 后,再向 host7,host8,host4 發(fā)送 block2,如圖藍(lán)色實(shí)線所示。發(fā)送完 block2 后,host7,host8,host4 向 NameNode,host7 向 Client 發(fā)送通 知,如圖淺綠色實(shí)線所示。client 向 NameNode 發(fā)送消息,說我寫完了,如圖黃色粗實(shí)線。。。這樣就完 畢了。

分析,通過寫過程,我們可以了解到:

①寫 1T 文件,我們需要 3T 的存儲,3T 的網(wǎng)絡(luò)流量帶寬。

②在執(zhí)行讀或?qū)懙倪^程中,NameNode 和 DataNode 通過 HeartBeat 進(jìn)行保存通信, 確定 DataNode 活著。如果發(fā)現(xiàn) DataNode 死掉了,就將死掉的 DataNode 上的數(shù)據(jù),放 到其他節(jié)點(diǎn)去。讀取時(shí),要讀其他節(jié)點(diǎn)去。

③掛掉一個(gè)節(jié)點(diǎn),沒關(guān)系,還有其他節(jié)點(diǎn)可以備份;甚至,掛掉某一個(gè)機(jī)架,也沒關(guān)系; 其他機(jī)架上,也有備份。

副本的選擇:為了降低整體的帶寬消耗和讀取延時(shí),HDFS會盡量讀取最近的副本。如果在同一個(gè)rack上有一個(gè)副本,那么就讀該副本。如果一個(gè)HDFS集群跨越多個(gè)數(shù)據(jù)中心,那么將首先嘗試讀本地?cái)?shù)據(jù)中心的副本。安全模式:系統(tǒng)啟動后先進(jìn)入安全模式,此時(shí)系統(tǒng)中的內(nèi)容不允許修改和刪除,直到安全模式結(jié)束。安全模式主要是為了啟動檢查各個(gè)DataNode上數(shù)據(jù)塊的安全性

示例讀流程:

讀操作就簡單一些了,如圖所示,client 要從 datanode 上,讀取 FileA。而 FileA 由 block1 和 block2 組成。那么,讀操作流程為:

a. client 向 namenode 發(fā)送讀請求。

b. namenode 查看 Metadata 信息,返回 fileA 的 block 的位置。

block1:host2,host1,host3

block2:host7,host8,host4

c. block 的位置是有先后順序的,先讀 block1,再讀 block2。而且 block1 去 host2 上讀?。?然后 block2,去 host7 上讀取;這個(gè)例子中,client 位于機(jī)架外,那么如果 client 位于機(jī)架內(nèi)某個(gè) DataNode 上,例如,client 是 host6。那么讀取的時(shí)候,遵循的規(guī)律是:優(yōu)先讀取本機(jī)架上的數(shù)據(jù)。

四、HDFS的優(yōu)缺點(diǎn)

1、HDFS 優(yōu)點(diǎn)

高容錯(cuò)性

數(shù)據(jù)自動保存多個(gè)副本

副本丟失后,自動回復(fù)

適合批處理

移動的計(jì)算和操作

數(shù)據(jù)位置暴漏給計(jì)算框架

適合大數(shù)據(jù)處理

GB、TB、PB 甚至更大

百萬規(guī)模以上的文件數(shù)量

10K+節(jié)點(diǎn)

可構(gòu)建在廉價(jià)的機(jī)器上

通過副本提高可靠性

提供了容錯(cuò)和恢復(fù)機(jī)制

低延遲數(shù)據(jù)訪問

毫秒級讀取

低延遲與高吞吐量

2、HDFS 缺點(diǎn)

小文件存取

占用 NameNode 內(nèi)存空間

尋址時(shí)間超過讀取時(shí)間

并發(fā)寫入、文件隨即修改

一個(gè)文件同時(shí)只能由一個(gè)寫入者

僅支持 append

柚子快報(bào)邀請碼778899分享:hadoop hdfs 大數(shù)據(jù)

http://yzkb.51969.com/

相關(guān)鏈接

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/17820873.html

發(fā)布評論

您暫未設(shè)置收款碼

請?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄