亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

關于視頻中讀流程所舉的例子有些疑問

按照寫的流程,在client想要寫入數據時,會像namenode發起寫入請求,然后namenode會尋找這次能夠滿足寫入條件的datanode,然后將這些信息返回給client,client再將分片數據一次寫入。我的理解是,此時處理這次寫入操作的datanode是已經確定的(如視頻中datanode1、2、3),也就是說datanode1、2、3上面都會有這次的數據分片,因為他只在開始的時候做了一次可用datanode的查詢。那么,會出現讀流程中所舉的例子那樣,分片1在datenode1、3上,分片2在datanode2、3上這種情況嗎?寫的時候不應該是備份到相同的datanode上嗎?

正在回答

2 回答

這里是兩個例子,分別是寫流程和讀流程。讀流程這里因為篇幅原因沒有畫更多的節點。這里想表達的意思是同一個文件不同的數據塊可能分布在不同的節點之上。client根據客戶端提供的數據塊的地址找對應的datanode去讀??!這里我當時描述的可能不太清楚。

0 回復 有任何疑惑可以回復我~
#1

怕翻船的忒修斯 提問者

我明白您的意思,我想問的是會出現分片1分布在12節點上,分片2分布在23節點的這種情況嗎?
2018-02-12 回復 有任何疑惑可以回復我~
#2

叁金 回復 怕翻船的忒修斯 提問者

會啊。一個文件的多個數據塊會分布在不同的機器上。 這個分布要考慮到不同機架(防止斷電斷網對數據讀取造成影響),他會優先存儲到當前連接的datanode,所以某個文件的數據塊1在datanode1和2 數據塊2在datanode2和3是有可能的。
2018-02-12 回復 有任何疑惑可以回復我~
#3

怕翻船的忒修斯 提問者 回復 叁金

老師您的意思是他每個分片寫入的時候都會再次去尋找合適的datanode嗎?而不是說我在這次寫入的最開始就已經決定了這次所有分片(分片abc)都存在123這個三個節點中嗎?
2018-02-26 回復 有任何疑惑可以回復我~
#4

叁金 回復 怕翻船的忒修斯 提問者

哦哦哦?,F在才明白你的問題到底在哪。 客戶端上傳數據的時候將數據進行分割,然后請求namenode獲取要存儲的datanode列表。 正常情況下,分開abc都會存儲在節點123上。 但是,如果傳輸過程之中某一個節點失效了無法進行傳輸。 namenode會重新分配一個新的節點。 這有可能導致 不同的分片會在不同的節點。 如果不出問題正常情況下,他們所在的地址是一致的
2018-02-26 回復 有任何疑惑可以回復我~
#5

怕翻船的忒修斯 提問者 回復 叁金

明白了!謝謝老師!
2018-03-05 回復 有任何疑惑可以回復我~
查看2條回復

視頻中的是兩個不同的例子吧

0 回復 有任何疑惑可以回復我~
#1

怕翻船的忒修斯 提問者

嗯嗯,我明白,可能我表述的不清楚,我是想問例子2中分片保存的問題...您可以看下我給老師的回復
2018-02-12 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Hadoop基礎及演練
  • 參與學習       52307    人
  • 解答問題       65    個

與大數據密不可分的Hadoop框架,你值得學習

進入課程

關于視頻中讀流程所舉的例子有些疑問

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號