1. 程式人生 > >分散式資料同步之Merkle Tree

分散式資料同步之Merkle Tree

3、在資料同步應用中,主要用作資料副本間的資料比對,發現數據的差異。每個副本計算各自的HASH根節點,其中,N個數據塊的HASH值作為葉子節點。在進行資料同步前,先傳輸根節點HASH值,若發現相等,則說明資料副本相等,不需要進行同步。若根節點HASH值不等,說明資料有異,此時需要找出相異的資料並進地同步:請求傳輸merkle tree中下一層的節點HASH值,按照HASH值不相等的分支一直走到葉子節點,最終就能定位出資料相異的資料塊,定位複雜度為O(log n)。