Merkle Tree 简介

故名思义,它是一种树,而且是存储哈希值的树,树中只有叶子节点才是真正的存储值的,其它的非叶子节点都是根据孩子的值进行哈希计算得来的。说说用途,Merkle tree可以用来进行大数据的比对,可以快速定位(O(logn))到哪一部分数据不一致,在分布式环境下可以减少数据的传输量。


对比两个大数据的副本是否一样,可以这样来处理,首先比对两个大数据构造起来的Merkle Tree的root节点是否一致,一致则认为这两个副本是相同的。如果不同,可以比对其下的孩子的哈希值是否相同,不同的节点下的值肯定不同。所以顺着树往下找,就能找到到底是哪一部分的数据时不同的,可以快速定位不同的部分。


DynamoDB和Git都使用了Merkle Tree来验证和定位数据的一致性。

原文:http://blog.csdn.net/hongchangfirst/article/details/26844219

作者:hongchangfirst

hongchangfirst的主页:http://blog.csdn.net/hongchangfirst


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值