【技术实现步骤摘要】
本申请属于区块链,特别是涉及一种区块链状态数据的存储方法、同步方法及存储介质。
技术介绍
1、区块链是一种由多方共同维护,以块链结构存储数据,使用密码学保证传输和访问安全,能够实现数据一致存储、无法篡改、无法抵赖的技术体系。区块链在运行过程中会持续产生状态数据,区块链状态数据包括区块链节点在执行区块交易后产生的账户状态和合约状态。区块链状态数据的膨胀是当下许多区块链系统面临的问题,尤其对于一些已经长期运行的区块链项目,例如以太坊,区块高度已经达到千万以上。当一个新的节点要加入现有区块链网络时,若按照传统方法,单纯通过区块重放的方式来生成区块链状态数据往往需要耗费大量的时间成本和计算资源。
2、目前主流方案是通过状态同步机制,让新加入的节点直接从全节点或数据节点请求同步状态数据。但是,在此过程中,由于每个数据节点以key-value键值对的形式存储,而在传统方案中,key是value的哈希值,也就是说,key是无序的,大量无序的key-value键值对会使得状态同步过程效率低、速度慢。
3、因此,如何高效存储和同步
...【技术保护点】
1.一种区块链状态数据的存储方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,当所述待存储的状态数据为多个且区块号不同,所述将所述状态数据和对应的键数据组成键值对,并持久化至磁盘,包括:
3.根据权利要求1所述的方法,其特征在于,当所述待存储的状态数据为多个且区块号相同,所述将所述状态数据和对应的键数据组成键值对,并持久化至磁盘,包括:
4.根据权利要求1所述的方法,其特征在于,所述键数据还包括所述状态树的类型;所述状态树的类型包括账户状态树或合约状态树。
5.一种区块链状态数据的读取方法,其特征在于,
...
【技术特征摘要】
1.一种区块链状态数据的存储方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,当所述待存储的状态数据为多个且区块号不同,所述将所述状态数据和对应的键数据组成键值对,并持久化至磁盘,包括:
3.根据权利要求1所述的方法,其特征在于,当所述待存储的状态数据为多个且区块号相同,所述将所述状态数据和对应的键数据组成键值对,并持久化至磁盘,包括:
4.根据权利要求1所述的方法,其特征在于,所述键数据还包括所述状态树的类型;所述状态树的类型包括账户状态树或合约状态树。
5.一种区块链状态数据的读取方法,其特征在于,包括:
6.一种区块链状态数据的同步方法,应用于第一节点,其特征在于,所述...
【专利技术属性】
技术研发人员:汪小益,张启锐,张帅,刘敬,姚文豪,
申请(专利权)人:杭州高新区滨江区块链与数据安全研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。