本公开的示例实施例总体涉及计算机领域,并且更具体地,涉及用于数据处理的方法、装置、设备、计算机可读存储介质和计算机程序产品。
背景技术:
1、区块链是利用块链式数据结构来验证与存储数据、利用分布式节点的共识算法来生成和更新数据、利用密码学的技术保证数据传输和访问控制的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。目前,区块链技术被广泛应用在金融、物联网、供应链等领域。
2、共识机制被用来保证数据的正确性,以使得所有节点对数据达成一致并防止恶意节点提交假数据。共识机制是指一笔交易需要经过足够数量共识节点的验证,在验证无误下对交易进行记录并同步给共识网络中所有的共识节点。共识节点基于共识完成的共识数据(例如,交易产生的交易数据)生成区块(block)。共识节点中的多个区块经链接处理形成区块链。共识节点中的每个区块链可以被视为一个分布式账本。区块链中的各个区块记载的数据可以被视为账本数据。
3、实际应用中,可能由于网络原因或设备故障等导致了某个共识节点缺失账本数据(也称为账本数据落后)。缺失账本数据的共识节点若想继续参与新的共识,则需要从其他共识节点同步缺失的账本数据。
技术实现思路
1、在本公开的第一方面,提供一种在缺失账本数据的共识节点处用于数据处理的方法。该方法包括:获取共识网络中其余共识节点存储的最新区块的区块信息,共识网络中包括缺失账本数据的共识节点和其余共识节点,区块信息包括区块高度;根据其余共识节点存储的最新区块的区块信息确定一组目标共识节点,一组目标共识节点中存储的最新区块的区块信息一致;通过比较本地存储的最新区块的区块高度与一组目标共识节点中存储的最新区块的区块高度来确定用于获取缺失的账本数据的多个目标区块;以及并发地从一组目标共识节点中的部分或全部目标共识节点获取多个目标区块中的账本数据,从不同的目标共识节点获得的账本数据来自不同的目标区块。
2、在本公开的第二方面,提供一种在缺失账本数据的共识节点处用于数据处理的装置。该装置包括:区块信息获取模块,被配置为获取共识网络中其余共识节点存储的最新区块的区块信息,共识网络中包括缺失账本数据的共识节点和其余共识节点,区块信息包括区块高度;目标共识节点确定模块,被配置为根据其余共识节点存储的最新区块的区块信息确定一组目标共识节点,一组目标共识节点中存储的最新区块的区块信息一致;目标区块确定模块,被配置为通过比较本地存储的最新区块的区块高度与一组目标共识节点中存储的最新区块的区块高度来确定用于获取缺失的账本数据的多个目标区块;以及账本数据获取模块,被配置为并发地从一组目标共识节点中的部分或全部目标共识节点获取多个目标区块中的账本数据,从不同的目标共识节点获得的账本数据来自不同的目标区块。
3、在本公开的第三方面,提供了一种电子设备。该电子设备包括至少一个处理单元;以及至少一个存储器,至少一个存储器被耦合到至少一个处理单元并且存储用于由至少一个处理单元执行的指令,指令在由至少一个处理单元执行时使电子设备执行本公开第一方面的方法。
4、在本公开的第四方面,提供了一种计算机可读存储介质。该计算机可读存储介质上存储有计算机程序,其可由处理器执行以执行根据本公开的第一方面的方法。
5、在本公开的第五方面,提供了一种计算机程序产品。该计算机程序产品包括计算机可执行指令,这些指令在被处理器执行时,实现根据本公开的第一方面的方法。
6、应当理解,本
技术实现要素:
部分中所描述的内容并非旨在限定本公开的实施例的关键特征或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的描述而变得容易理解。
1.一种在缺失账本数据的共识节点处用于数据处理的方法,包括:
2.根据权利要求1所述的方法,还包括:
3.根据权利要求1或2所述的方法,其中并发地获取所述多个目标区块中的账本数据包括:
4.根据权利要求3所述的方法,所述一组目标共识节点包括第一目标共识节点和第二目标共识节点,并且所述分别向每个所述目标共识节点发送请求消息包括:
5.根据权利要求4所述的方法,还包括:
6.根据权利要求3-5任一项所述的方法,其中所述位置为所述目标区块的高度,并且所述并发地获取所述多个目标区块中的账本数据包括:
7.根据权利要求6所述的方法,还包括:
8.根据权利要求1所述的方法,所述区块信息还包括区块标识。
9.一种在缺失账本数据的共识节点处用于数据处理的装置,所述装置包括:
10.一种电子设备,包括:
11.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序可由处理器执行以实现根据权利要求1至8中任一项所述的方法。