HDFS如何保證資料的完整性

2021-09-02 11:42:25 字數 521 閱讀 5884

總的來說,hdfs 會對寫入的資料計算校驗和,並在讀取資料時驗證校驗和。

具體來說,datanode 負責收到資料後儲存該資料及其校驗和。datanode 的資料**可分為兩種:其一為是從客戶端收到的資料,其二為從其他 datanode 複製來的資料。還有一種情況,客戶端將資料及其校驗和傳送到由一系列 datanode 組成的管線,管線中最後乙個 datanode 負責驗證校驗和。

每個 datanode 也會在乙個後台程序中執行乙個 datablockscanner ,從而定期驗證儲存在這個 datanode 的所有資料。

如何修復損壞的datanode?

客戶端在讀取資料塊時,如果檢測到錯誤首先向 namenode 報告正在嘗試讀取的這個 datanode 。namenode 會將這個資料塊標記為已損壞,對這個資料塊的請求會被 namenode 安排到另乙個複本datanode上。之後,它安排這個資料塊的另乙個複本複製到另乙個 datanode 上,如此,資料塊的複本因子又回到期望水平。此後,已損壞的資料塊複本會被刪除。

保證資料完整性

1.資料的完整性 資料的完整性分為四類 實體完整性,域完整性,引用完整性,自定義完整性。2.資料完整性的實現 建立非空約束的語法 create table friend name varchar 50 not null 設定主鍵約束 主鍵約束是應用於表的列的乙個約束。設定唯一約束 指給定列的所有的值...

保證資料完整性

保證資料完整想性 資料完整性 可靠性 準確性 資料完整性分類 1.實體完整性 保證一行資料是有效的 2.域完整性 保證一列資料是有效的 3.引用完整性 保證引用1編號是有效的 4.使用者自定義完整性 保證自定義規則 資料完整性的實現 建立非空約束 not null 設定主鍵約束 primary ke...

HDFS資料完整性

使用者希望儲存和處理資料的時候,不會有任何損失或者損壞。hadoop提供兩種校驗 1校驗和 常用迴圈冗餘校驗crc 32 2執行後台程序來檢測資料塊 校驗和 1 寫入資料節點驗證 2 讀取資料節點驗證 3 恢復資料 4 localfilesystem類 5 checksumfilesystem類 6...