日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

hdfs校验和

發布時間:2025/6/16 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hdfs校验和 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

hdfs完整性:用戶希望儲存和處理數據的時候,不會有任何損失或者損壞。所以提供了兩種校驗:

1.校驗和(常用循環冗余校驗CRC-32)。

2.運行后臺進程來檢測數據塊。

校驗和:

a.寫入數據節點驗證

b.讀取數據節點驗證

c.恢復數據

d.Localfilesystem類

e.ChecksumfileSystem類

寫入數據節點驗證:

  Hdfs會對寫入的所有數據計算校驗和,并在讀取數據時驗證校驗和。

  元數據節點負責在驗證收到的數據后,儲存數據及其校驗和。在收到客戶端數據或復制其他datanode的數據時執行。

  正在寫數據的客戶端將數據及其校驗和發送到一系列數據節點組成的管線,管線的最后一個數據節點負責驗證校驗和。

讀取數據節點驗證:

  客戶端讀取數據節點數據也會驗證校驗和,將它們與數據節點中儲存的校驗和進行比較。

  每個數據節點都持久化一個用于驗證的校驗和日志。 客戶端成功驗證一個數據塊后,會告訴這個數據節點,數據節點由此更新日志。

恢復數據:

  由于hdfs儲存著每個數據塊的備份,它可以通過復制完好的數據備份來修復損壞的數據塊來恢復數據。

Localfilesystem類:

  Hadoop的LocalFileSystem類是用來執行客戶端的校驗和驗證。當寫入一個名為filename的文件時文件系統客戶端會在包含文件塊校驗和的同一目錄內建立一個名為Filename.crc的隱藏文件。

ChecksumfileSystem類:

  LocalFileSystem類通過ChecksumFileSystem類來完成自己的任務 FileSystem rawFs;

  FileSystem checksummedFs=new ChecksumFileSystem(rawFS);

  可以通過CheckFileSystem的getRawFileSystem()方法獲取源文件系統。

  當檢測到錯誤,CheckFileSystem類會調用reportCheckSumFailure()方法報告錯誤,然后LocalFileSystem將這個出錯的文件和校驗和移到名為bad_files的文件夾內,管理員可以定期檢查這個文件夾。

DatablockScanner:

  數據節點后臺有一個進程DataBlockScanner,定期驗證儲存在這個數據節點上的所有數據項,該項措施是為解決物理儲存媒介上的損壞。DataBlockScanner是作為數據節點的一個后臺線程工作的,跟著數據節點同時啟動 它的工作流程如圖:

?

?

  由于對數據節點上的每一個數據塊掃描一遍要消耗較多系統資源,因此掃描周期的值一般比較大, 這就帶來另一個問題,就是在一個掃描周期內可能出現數據節點重啟的情況,所以為了提高系統性能,避免數據節點在啟動后對還沒有過期的數據塊又掃描一遍, DataBlockScanner在其內部使用了日志記錄器來持久化保存每一個數據塊上一次掃描的時間 這樣的話,數據節點可以在啟動之后通過日志文件來恢復之前所有的數據塊的有效時間。

?

  Better late than nerver.

轉載于:https://www.cnblogs.com/luminous1/p/8360980.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的hdfs校验和的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。