
从数据保存到可验证存储
区块链技术的存储研究,需要同时回答三个问题:数据如何组织、节点如何查找和更新数据、读取结果如何验证。数据库负责保存和读取记录,树结构组织记录之间的关系,哈希则把数据内容与可核对的摘要联系起来。这些层次相互配合,不能仅凭数据库类型判断整个存储方案。
哈希、Merkle树与区块关联
比特币开发者参考文档描述了两种关联:区块头引用前一区块头的哈希,并包含由区块交易标识构建的Merkle根。前者关联区块,后者把一组交易归结为一个摘要。

在哈希安全假设成立的条件下,修改数据通常会改变相关摘要,使验证者能够发现不一致。Merkle证明利用路径上的必要信息核对数据与根的关系,适合验证某条记录是否属于已承诺的数据集合。根哈希本身无法还原完整数据,也不等于数据始终可供下载。

前缀树、路径压缩与键值数据库
以太坊开发文档介绍的Merkle Patricia Trie结合了按键路径检索与哈希验证,并利用扩展节点压缩连续路径。节点经过编码后,可以通过哈希引用;较短节点也可以内嵌。
理解这种结构时,应区分逻辑树和底层键值数据库。沿树查询一条记录,可能需要多次读取数据库。路径压缩减少不必要的中间层,但实际效率还取决于路径形态、节点大小和底层读取成本,不能把一次逻辑查询直接视为一次磁盘读取。
序列化与更新成本
序列化把节点结构转换为字节。参与验证的各方必须遵循相同编码规则,才能对相同内容计算出一致摘要。因此,字段排列、路径标记和字节表示都属于存储研究的重要细节。
修改叶节点后,相关祖先节点的摘要需要随之更新。评估方案时,既要看原始数据占用,也要考虑索引节点、编码开销和更新涉及的写入量。不同结构适用于不同数据组织需求,交易集合的汇总与按键查询状态需要分别分析。
适用条件与常见问题
只有根哈希,能否确认查询结果可信?还需要相应证明,并确认根来自可信的验证过程。证明核对的是记录与指定根的一致性,根的可信来源是另一个必要条件。
哈希能否让数据保密?哈希在这些结构中主要承担摘要与完整性验证功能,不能替代访问控制或加密。存储结构能否单独防止历史被改写?树和哈希链提供可检查的关联,历史版本的接受规则仍由协议验证与共识机制决定。