-
HDFS的設(shè)計(jì)目標(biāo)
- 檢測(cè)以及快速恢復(fù)硬件問(wèn)題.
- 流式的數(shù)據(jù)訪(fǎng)問(wèn).
- 移動(dòng)計(jì)算比移動(dòng)數(shù)據(jù)的代價(jià)小.
- 簡(jiǎn)化一致性模型.
- 超大規(guī)模數(shù)據(jù)集
- 異構(gòu)軟硬件平臺(tái)之間的可移植性.
-
HDFS的結(jié)構(gòu)模型
HDFS是一個(gè)主從的結(jié)構(gòu)模型.一個(gè)HDFS集群是由一個(gè)NameNode和若干個(gè)DataNode組成.NameNode主節(jié)點(diǎn)是主服務(wù)器.管理文件系統(tǒng)的命名空間和和客戶(hù)端對(duì)文件的訪(fǎng)問(wèn)操作.DataNode是集群中的一般節(jié)點(diǎn).負(fù)責(zé)數(shù)據(jù)的存儲(chǔ).客戶(hù)端通過(guò)NameNode
向DataNode節(jié)點(diǎn)交換訪(fǎng)問(wèn)文件系統(tǒng).聯(lián)系NameNode獲取文件元數(shù).文件I/O操作直接和NameCode進(jìn)行交互.從數(shù)據(jù)的內(nèi)部看文件被分為若干個(gè)數(shù)據(jù)塊.典型數(shù)據(jù)塊的大小為 64MB. 假設(shè)如果客戶(hù)端要訪(fǎng)問(wèn)一個(gè)文件。首先,客戶(hù)端從NameNode中獲得
組成文件的數(shù)據(jù)塊位置的列表,即知道數(shù)據(jù)塊存儲(chǔ)在哪些DateNode 中;然后客戶(hù)端直接從DataNode上讀取文件數(shù)據(jù).NameNode不參與文件傳輸.NameNode 是HDFS的守護(hù)程序。主要負(fù)責(zé)大數(shù)據(jù)文件如何被分割成數(shù)據(jù)塊。被分割后的數(shù)據(jù)塊分別為存儲(chǔ)在哪些DataNode的數(shù)據(jù)節(jié)點(diǎn)上.
NameNode負(fù)責(zé)維護(hù)文件系統(tǒng)的命名空間.任何對(duì)文件系統(tǒng)的名稱(chēng)空間或?qū)傩缘男薷亩紝⒈籒ameNode記錄下來(lái).
-
數(shù)據(jù)的復(fù)制與存放
HDFS是在大集群中跨機(jī)器可靠地存儲(chǔ)超大文件. 他將每一個(gè)文件存儲(chǔ)成一系列的數(shù)據(jù)塊.
?(1)數(shù)據(jù)的復(fù)制- 文件的所有的數(shù)據(jù)塊都有副本,這樣可以提高數(shù)據(jù)的容錯(cuò)性.應(yīng)用程序可以指定某個(gè)文件的副本數(shù)量.HDFS中的文件都是一次性寫(xiě)入。并且在任何時(shí)候只有一個(gè)寫(xiě)入者.NameNode管理數(shù)據(jù)的復(fù)制,采用周期性的從集群中的每一個(gè)DataNode中接受心跳信號(hào)可塊狀報(bào)告。如果接受到心跳報(bào)告說(shuō)明DataNde正常.
- 副本的存放是NDFS可靠性和性能的關(guān)鍵
?
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
