Hadoop HDFS一致模型和distcp

2021-12-30 10:25:43 字數 1084 閱讀 2775

一致模型

新建檔案後,能在檔案系統的命名空間立即可見

寫入檔案的內容不能保證立即可見,因為正在寫入的塊對reader不可見,會不一致

hflush():fsdatainputstream的方法,hdfs保證目前寫入的資料都到達datanode的寫入管線並對所有reader可見,確保資料在記憶體中,不確保在已經寫入磁碟;hdfs的close()方法已經包含執行hflush()

hsync():確保資料已經寫入磁碟,提交檔案描述符的緩衝資料

重要性:

如果不使用一致模型,系統故障時可能會丟失資料塊。

一致模型提供了魯棒性,但增加hsfs負載,吞吐量受到影響,所以要根據實際找到合適的呼叫頻率

distcp

hadoop自帶程式,並行地將資料複製進出hadoop,作為乙個mr作業實現,並行執行map,沒有reducer,-m可以修改執行map的數量

hadoop distcp file1 file2

hadoop disctp dir1 dir2

//如果dir2不存在,則新建dir2

//如果dir2存在,則形成dir2/dir1

//可以指定多個**dir

hadoop distcp -update dir1 dir2

hadoop distcp -overwrite dir1 dir2hdfs集群間傳送資料

hadoop distcp webhdfs://namenode1:50070/foo webhdfs://namenode2:50070/foo保持hdfs集群均衡

複製資料可能影響集群的均衡性,最好先使用預設的每個節點20個map執行distcp執行,還可以使用之後介紹的均衡器工具改善均勻程度

例如-m設定為1,則首先選擇執行map的當前節點儲存副本,其他副本分散在集群中,這導致執行節點總會有副本,不均衡

記憶體一致性模型

cache coherence 本文主要討論的是記憶體一致性問題 memory consistency 和快取一致性 cache coherence 是不同的。在 計算機體系結構 量化方法研究 第五章中,memory consistency是由cache coherence引出的,所以我們就先來說說...

強一致性 弱一致性 最終一致性

這種方式在es等分布式系統中也有體現,可以設定主shard提交即返回成功,或者需要replica shard提交成功再返回。提到分布式架構就一定繞不開 一致性 問題,而 一致性 其實又包含了資料一致性和事務一致性兩種情況,本文主要討論資料一致性 事務一致性指acid 複製是導致出現資料一致性問題的唯...

編碼原則 一致的思維(深度的一致)

結構 1 2 返回預設的表單 items 3 4 return 5 6 getdefaultformitems function property.editorconfig editorconfig 1617 if property.editorconfigfns 21 2223 return ed...