CN111400399A - 区块链系统的账本同步方法、装置及硬件设备 - Google Patents
区块链系统的账本同步方法、装置及硬件设备 Download PDFInfo
- Publication number
- CN111400399A CN111400399A CN202010155381.6A CN202010155381A CN111400399A CN 111400399 A CN111400399 A CN 111400399A CN 202010155381 A CN202010155381 A CN 202010155381A CN 111400399 A CN111400399 A CN 111400399A
- Authority
- CN
- China
- Prior art keywords
- block
- node
- account book
- space
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000005540 biological transmission Effects 0.000 claims abstract description 27
- 238000004590 computer program Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 13
- 238000004806 packaging method and process Methods 0.000 claims description 8
- 239000013598 vector Substances 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000001360 synchronised effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种区块链系统的账本同步方法、装置及硬件设备,涉及区块链技术领域,用于减少存储到区块链系统中的区块账本,提高区块链系统的运行效率。本发明主要技术方案为:接收区块账本,根据区块摘要信息确定对应数据类型的区块节点;将区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于区块所需空间大小数据的第一区块节点;根据区块所需空间大小数据和区块重要等级信息计算传输区块账本所需要的网络带宽;将区块剩余空间大于区块所需空间大小数据的第一区块节点作为第二区块节点;将第二区块节点中满足区块账本所需要的网络带宽的区块节点作为目标节点;将区块账本同步给目标节点。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块链系统的账本同步方法、装置及硬件设备。
背景技术
区块链是一种与传统集中记账方式不同的记录技术,参与到区块链系统上的节点,可能不属于同一组织、彼此无须信任;区块链数据由所有节点共同维护,每个参与维护的节点都能获得一份完整记录的拷贝。与传统的记账技术相比,其特点包括:维护一条不断增长的链,只可能添加记录,而发生过的记录不可篡改;无须集中控制而能达成共识等特点。
随着区块链节点越来越多,区块链运行效率就越来越低,向用户收取的算力成本也就越来越高,这个问题已经严重影响了区块链技术的应用发展。因为在区块链平台上,为了保证数据存储的安全性,任意一个节点的数据更新后,都要同步存储到其它节点,但是,随着存储的数据越来越多,节点之间需要同步的数据就越多,导致每次同步的耗时更长,而且,随着节点的越来越多,一个最新的数据要同步到所有节点所需的时间也就越来越多,这样就导致了区块链运行的效率越来越低。
发明内容
本发明提供一种区块链系统的账本同步方法、装置、计算机设备及存储介质,用于减少存储到区块链系统中的区块账本,提高区块链系统的运行效率。
本发明实施例提供一种区块链系统的账本同步方法,所述区块链系统中包括多个区块节点,以及与多个所述区块节点对应的区块同步中心节点,所述方法应用于所述区块同步中心节点,所述方法包括:
接收并存储区块生成节点发送的区块账本,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息;所述区块生成节点中的区块账本是根据打包共识时间内所有的智能合约生成的;
根据所述区块摘要信息确定对应数据类型的区块节点,每个所述区块节点都对应存储一种数据类型的区块账本;
将所述区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于所述区块所需空间大小数据的第一区块节点,所述预置区块节点剩余空间表中动态存储不同区块节点分别对应的区块剩余空间;
根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽;
将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽;
将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。
本发明实施例提供一种区块链系统的账本同步装置,所述区块链系统中包括多个区块节点,以及与多个所述区块节点对应的区块同步中心节点,所述装置应用于所述区块同步中心节点,所述装置包括:
接收模块,用于接收并存储区块生成节点发送的区块账本,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息;所述区块生成节点中的区块账本是根据打包共识时间内所有的智能合约生成的;
确定模块,用于根据所述区块摘要信息确定对应数据类型的区块节点,每个所述区块节点都对应存储一种数据类型的区块账本;
获取模块,用于将所述区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于所述区块所需空间大小数据的第一区块节点,所述预置区块节点剩余空间表中动态存储不同区块节点分别对应的区块剩余空间;
计算模块,用于根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽;
所述获取模块,还用于将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽;
同步模块,用于将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述区块链系统的账本同步方法。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述区块链系统的账本同步装置。
本发明提供的一种区块链系统的账本同步方法、装置、计算机设备及存储介质,接收并存储区块生成节点发送的区块账本,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息;根据所述区块摘要信息确定对应数据类型的区块节点,每个所述区块节点都对应存储一种数据类型的区块账本;将所述区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于所述区块所需空间大小数据的第一区块节点;根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽;将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽;将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。由于本发明实施例是基于区块摘要信息、区块所需空间大小数据和区块重要等级信息从多个区块节点中选择出目标节点,然后将区块账本同步给该目标节点,从而通过本发明实施例可以减少存储到区块链系统中的区块账本,提高了区块链系统的运行效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中区块链系统的账本同步方法的一流程图;
图2是本发明一实施例中确定与区块账本对应的数据类型的区块节点的流程图;
图3是本发明一实施例中计算区块账本所需要的网络带宽的流程图;
图4是本发明一实施例中区块链系统的账本同步装置的一原理框图;
图5是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在一实施例中,如图1所示,提供一种区块链系统的账本同步方法,所述区块链系统中包括多个区块节点,以及与多个所述区块节点对应的区块同步中心节点,该区块同步中心节点用于统一管理各个区块节点的账本同步工作,所述方法应用于所述区块同步中心节点,该方法包括如下步骤:
S10,接收并存储区块生成节点发送的区块账本。
其中,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息,区块摘要信息是对所述区块账本中包含内容的摘要,区块所需空间大小数据用于描述区块账本所占用的数据存储量,区块重要等级信息用户表示区块账本的重要程度。在本发明实施例中,所述区块生成节点中的区块账本是根据打包共识时间内所有的智能合约生成的,即区块生产节点将在共识时间内的所有的智能合约进行打包生成区块账本,然后将该区块账本发送给区块同步中心节点,以使得区块同步中心节点有选择的将该区块账本同步给其他区块节点。
需要说明的是,区块生成节点在对智能合约进行打包的过程中,需要根据打包的智能合约的内容确定对应的区块摘要信息和区块重要等级信息,然后统计打包智能合约所需要的存储空间大小,并将区块摘要信息和区块所需空间大小数据、区块重要等级信息作为区块头部,连同共识时间内的智能合约打包得到区块账本。
S20,根据所述区块摘要信息确定对应数据类型的区块节点。
其中,每个所述区块节点都对应存储一种数据类型的区块账本,该数据类型具体可以根据实际情况进行设定,如该数据类型具体可以为银行数据类型、保险数据类型、购物数据类型、餐饮数据类型等,本发明实施例不做具体限定。在本发明实施例中,可以根据区块账本的区块摘要信息确定对应的数据类型的区块节点,具体的通过关键词识别技术确定区块账本对应的数据类型的区块节点,如对区块摘要信息进行关键词识别,得到关键词“保险”,即可以通过该关键词确定对应的数据类型为保险数据类型,因此得到区块账本对应保险数据类型的区块节点。
如图2所示,在本发明提供的一个实施例中,步骤S20:所述根据所述区块摘要信息确定对应数据类型的区块节点,包括:
S201,将所述区块摘要信息转换为文本特征向量。
S202,将所述文本特征向量输入到数据类型识别模型中得到与所述区块摘要信息对应的数据类型。
其中,数据类型识别模型是根据大量的样本数据进行训练得到的,即所述数据类型识别模型是根据大量的区块摘要样本信息和其对应的数据类型训练得到的。在本发明实施例中,将文本特征向量输入到预先训练好的数据类型识别模型可以得到与区块摘要信息对应的数据类型,由于数据类型识别模型是根据大量的样本数据训练得到的,因此通过该数据类型识别模型可以准确的得到区块摘要信息对应的数据类型。
S30,将区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于区块所需空间大小数据的第一区块节点。
其中,所述预置区块节点剩余空间表中动态存储不同区块节点分别对应的区块剩余空间;即个区块节点分别对应的区块剩余空间是根据区块节点的实时存储情况实时动态更新存储的。
在本发明实施例中,从预置区块节点剩余空间表中获取区块剩余空间大于区块所需空间大小数据的第一区块节点,是为了从第一区块节点中获取能够有足够存储空间存储区块账本的区块节点。
S40,根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽。
在本发明实施例中,区块所需空间大小数据越大,区块重要等级信息越高,则区块账本对所需要的网络带宽要求的越高;相反的,区块所需空间大小数据越小,区块重要等级信息越低,则区块账本对所需要的网络带宽要求也就也越低。
如图3所示,在本发明提供的一个实施例中,步骤S40:所述根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽,包括:
S401,根据所述区块重要等级信息确定所述区块账本所需要的传输时间;不同的区块重要等级信息对应不同的区块账本传输时间。
其中,区块重要等级信息可以用于表达区块账本的传输时间长短,区块重要等级信息越高,所要求的区块账本的传输时间越短;区块重要等级信息越低,所要求的区块账本的传输时间相对较长。具体的,所述根据所述区块重要等级信息确定所述区块账本所需要的传输时间,包括:根据区块等级信息表确定与所述区块重要等级信息对应的传输时间,所述区块等级信息表中存储有不同区块重要等级信息分别对应的传输时间。例如,区块重要等级信息为3,则要求的传输时间为1分钟;区块重要等级信息为2,则要求的传输时间为2分钟;区块重要等级信息为3,则要求的传输时间为3分钟,本发明实施例不做具体限定。
S402,通过所述区块所需空间大小数据和所述传输时间的比值,确定所述区块账本所需要的网络带宽。
在本发明实施例中,首先根据所述区块重要等级信息确定所述区块账本所需要的传输时间,然后通过所述区块所需空间大小数据和所述传输时间的比值,确定所述区块账本所需要的网络带宽。由于网络带宽是根据区块所需空间大小数据和传输时间的比值确定的,因此通过本发明实施例可以准确的确定传输所述区块账本所需要的网络带宽,以便于在后续步骤中依据确定的网络带宽从第一区块节点中选择出满足该网络带宽的第二区块节点。
S50,将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽。
S60,将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。
在本发明实施例中,区块同步中心节点在接收到区块账本之后,首先根据区块账本的区块摘要信息确定需要存储该区块账本的区块节点,然后从基于区块摘要信息选择的区块节点中选择区块剩余空间大于区块所需空间大小数据的第一区块节点,之后将区块剩余空间大于区块所需空间大小数据的第一区块节点作为第二区块节点,获取区块链系统中第二区块节点的网络带宽;将第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将区块账本同步给所述目标节点。由于本发明实施例是基于区块摘要信息、区块所需空间大小数据和区块重要等级信息从多个区块节点中选择出目标节点,然后将区块账本同步给该目标节点,从而通过本发明实施例可以较少存储到区块链中的区块账本,提高区块链的运行效率。
对于本发明实施例,为了实时的更新预置区块节点剩余空间表中区块节点对应的区块剩余空间,本发明实施例在将区块账本同步给所述目标节点之后,还需要获取所述目标节点的区块剩余空间,然后根据所述目标节点的区块剩余空间更新所述预置区块节点剩余空间表中对应区块节点的区块剩余空间,从而实现预置区块节点剩余空间表中数据的动态更新,从而在后续中可根据预置区块节点剩余空间表中准确的选择出满足区块账本所需空间的区块节点。
在本发明提供的一个实施例中,在将所述第二区块节点中满足所述网络带宽的区块节点作为目标节点之后,所述方法还包括:向所述目标节点发送查询请求,所述查询请求用于查询所述目标节点中目标区块的部分内容;接收多个所述目标节点反馈的所述目标区块的部分内容;通过比较每个所述目标节点反馈的所述目标区块的部分内容和存储本地的所述目标区块的部分内容,确定所述每个目标节点的可靠度;相应的,所述将所述区块账本同步给所述目标节点,包括:将所述区块账本同步给所述可靠度大于阈值的目标节点。其中,目标区块的部分内容为:所述目标区块中的部分交易信息、所述目标区块的区块体中的目标字段值等,本发明实施例不做具体限定。
需要说明的是,本发明实施例具体可以根据文本相似度确定目标节点的可靠度,即通过文本相似度算法比较目标节点反馈的所述目标区块的部分内容和存储本地的所述目标区块的部分内容,确定每个目标节点的可靠度,即目标节点反馈的所述目标区块的部分内容和存储本地的所述目标区块的部分内容的相似度,然后将区块账本同步给相似度大于阈值的目标节点。
本发明提供的一种区块链系统的账本同步方法,接收并存储区块生成节点发送的区块账本,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息;根据所述区块摘要信息确定对应数据类型的区块节点,每个所述区块节点都对应存储一种数据类型的区块账本;将所述区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于所述区块所需空间大小数据的第一区块节点;根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽;将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽;将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。由于本发明实施例是基于区块摘要信息、区块所需空间大小数据和区块重要等级信息从多个区块节点中选择出目标节点,然后将区块账本同步给该目标节点,从而通过本发明实施例可以减少存储到区块链系统中的区块账本,提高了区块链系统的运行效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在本发明提供的一实施例中,提供一种区块链系统的账本同步装置,该区块链系统的账本同步装置与上述实施例中区块链系统的账本同步方法一一对应。如图4所示,所述区块链系统中包括多个区块节点,以及与多个所述区块节点对应的区块同步中心节点,所述装置应用于所述区块同步中心节点,区块链系统的账本同步装置包括:接收模块10、确定模块20、获取模块30、计算模块40、同步模块50。各功能模块详细说明如下:
接收模块10,用于接收并存储区块生成节点发送的区块账本,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息;所述区块生成节点中的区块账本是根据打包共识时间内所有的智能合约生成的;
确定模块20,用于根据所述区块摘要信息确定对应数据类型的区块节点,每个所述区块节点都对应存储一种数据类型的区块账本;
获取模块30,用于将所述区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于所述区块所需空间大小数据的第一区块节点,所述预置区块节点剩余空间表中动态存储不同区块节点分别对应的区块剩余空间;
计算模块40,用于根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽;
所述获取模块30,还用于将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽;
同步模块50,用于将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。
进一步的,所述装置还包括:
所述获取模块30,还用于获取所述目标节点的区块剩余空间,
更新模块60,用于根据所述目标节点的区块剩余空间更新所述预置区块节点剩余空间表中对应区块节点的区块剩余空间。
进一步的,所述装置还包括:
发送模块70,用于向所述目标节点发送查询请求,所述查询请求用于查询所述目标节点中目标区块的部分内容;
所述接收模块10,还用于接收多个所述目标节点反馈的所述目标区块的部分内容;
所述确定模块20,还用于通过比较每个所述目标节点反馈的所述目标区块的部分内容和存储本地的所述目标区块的部分内容,确定所述每个目标节点的可靠度;
所述同步模块50,具体用于将所述区块账本同步给所述可靠度大于阈值的目标节点。
具体的,所述确定模块20,包括:
转换单元,用于将所述区块摘要信息转换为文本特征向量;
计算单元,用于将所述文本特征向量输入到数据类型识别模型中得到与所述区块摘要信息对应的数据类型,所述数据类型识别模型是根据大量的区块摘要样本信息和其对应的数据类型训练得到的。
具体的,所述计算模块40,包括:
确定单元,用于根据所述区块重要等级信息确定所述区块账本所需要的传输时间;不同的区块重要等级信息对应不同的区块账本传输时间;
所述确定单元,还用于通过所述区块所需空间大小数据和所述传输时间的比值,确定所述区块账本所需要的网络带宽。
所述确定单元,还用于根据区块等级信息表确定与所述区块重要等级信息对应的传输时间,所述区块等级信息表中存储有不同区块重要等级信息分别对应的传输时间。
关于区块链系统的账本同步装置的具体限定可以参见上文中对于区块链系统的账本同步方法的限定,在此不再赘述。上述区块链系统的账本同步装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种区块链系统的账本同步方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
接收并存储区块生成节点发送的区块账本,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息;所述区块生成节点中的区块账本是根据打包共识时间内所有的智能合约生成的;
根据所述区块摘要信息确定对应数据类型的区块节点,每个所述区块节点都对应存储一种数据类型的区块账本;
将所述区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于所述区块所需空间大小数据的第一区块节点,所述预置区块节点剩余空间表中动态存储不同区块节点分别对应的区块剩余空间;
根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽;
将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽;
将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收并存储区块生成节点发送的区块账本,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息;所述区块生成节点中的区块账本是根据打包共识时间内所有的智能合约生成的;
根据所述区块摘要信息确定对应数据类型的区块节点,每个所述区块节点都对应存储一种数据类型的区块账本;
将所述区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于所述区块所需空间大小数据的第一区块节点,所述预置区块节点剩余空间表中动态存储不同区块节点分别对应的区块剩余空间;
根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽;
将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽;
将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种区块链系统的账本同步方法,所述区块链系统中包括多个区块节点,以及与多个所述区块节点对应的区块同步中心节点,所述方法应用于所述区块同步中心节点,其特征在于,所述方法包括:
接收并存储区块生成节点发送的区块账本,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息;所述区块生成节点中的区块账本是根据打包共识时间内所有的智能合约生成的;
根据所述区块摘要信息确定对应数据类型的区块节点,每个所述区块节点都对应存储一种数据类型的区块账本;
将所述区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于所述区块所需空间大小数据的第一区块节点,所述预置区块节点剩余空间表中动态存储不同区块节点分别对应的区块剩余空间;
根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽;
将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽;
将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。
2.根据权利要求1所述的区块链系统的账本同步方法,其特征在于,所述将所述区块账本同步给所述目标节点之后,所述方法还包括:
获取所述目标节点的区块剩余空间,根据所述目标节点的区块剩余空间更新所述预置区块节点剩余空间表中对应区块节点的区块剩余空间。
3.根据权利要求1所述的区块链系统的账本同步方法,其特征在于,在将所述第二区块节点中满足所述网络带宽的区块节点作为目标节点之后,所述方法还包括:
向所述目标节点发送查询请求,所述查询请求用于查询所述目标节点中目标区块的部分内容;
接收多个所述目标节点反馈的所述目标区块的部分内容;
通过比较每个所述目标节点反馈的所述目标区块的部分内容和存储本地的所述目标区块的部分内容,确定所述每个目标节点的可靠度;
所述将所述区块账本同步给所述目标节点,包括:
将所述区块账本同步给所述可靠度大于阈值的目标节点。
4.根据权利要求1所述的区块链系统的账本同步方法,其特征在于,所述根据所述区块摘要信息确定对应数据类型的区块节点,包括:
将所述区块摘要信息转换为文本特征向量;
将所述文本特征向量输入到数据类型识别模型中得到与所述区块摘要信息对应的数据类型,所述数据类型识别模型是根据大量的区块摘要样本信息和其对应的数据类型训练得到的。
5.根据权利要求4所述的区块链系统的账本同步方法,其特征在于,所述根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽,包括:
根据所述区块重要等级信息确定所述区块账本所需要的传输时间;不同的区块重要等级信息对应不同的区块账本传输时间;
通过所述区块所需空间大小数据和所述传输时间的比值,确定所述区块账本所需要的网络带宽。
6.根据权利要求5所述的区块链系统的账本同步方法,其特征在于,所述根据所述区块重要等级信息确定所述区块账本所需要的传输时间,包括:
根据区块等级信息表确定与所述区块重要等级信息对应的传输时间,所述区块等级信息表中存储有不同区块重要等级信息分别对应的传输时间。
7.一种区块链系统的账本同步装置,所述区块链系统中包括多个区块节点,以及与多个所述区块节点对应的区块同步中心节点,所述装置应用于所述区块同步中心节点,其特征在于,所述装置包括:
接收模块,用于接收并存储区块生成节点发送的区块账本,所述区块账本中包含区块摘要信息、区块所需空间大小数据、区块重要等级信息;所述区块生成节点中的区块账本是根据打包共识时间内所有的智能合约生成的;
确定模块,用于根据所述区块摘要信息确定对应数据类型的区块节点,每个所述区块节点都对应存储一种数据类型的区块账本;
获取模块,用于将所述区块摘要信息对应的数据类型的区块节点作为第一区块节点,从预置区块节点剩余空间表中获取区块剩余空间大于所述区块所需空间大小数据的第一区块节点,所述预置区块节点剩余空间表中动态存储不同区块节点分别对应的区块剩余空间;
计算模块,用于根据所述区块所需空间大小数据和所述区块重要等级信息计算传输所述区块账本所需要的网络带宽;
所述获取模块,还用于将所述区块剩余空间大于所述区块所需空间大小数据的第一区块节点作为第二区块节点,获取所述区块链系统中所述第二区块节点的网络带宽;
同步模块,用于将所述第二区块节点中满足所述区块账本所需要的网络带宽的区块节点作为目标节点;并将所述区块账本同步给所述目标节点。
8.根据权利要求7所述的区块链系统的账本同步装置,其特征在于,所述装置还包括:
所述获取模块,还用于获取所述目标节点的区块剩余空间,
更新模块,用于根据所述目标节点的区块剩余空间更新所述预置区块节点剩余空间表中对应区块节点的区块剩余空间。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述区块链系统的账本同步方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述区块链系统的账本同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010155381.6A CN111400399B (zh) | 2020-03-04 | 2020-03-04 | 区块链系统的账本同步方法、装置及硬件设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010155381.6A CN111400399B (zh) | 2020-03-04 | 2020-03-04 | 区块链系统的账本同步方法、装置及硬件设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111400399A true CN111400399A (zh) | 2020-07-10 |
CN111400399B CN111400399B (zh) | 2023-11-14 |
Family
ID=71432276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010155381.6A Active CN111400399B (zh) | 2020-03-04 | 2020-03-04 | 区块链系统的账本同步方法、装置及硬件设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111400399B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113645278A (zh) * | 2021-07-23 | 2021-11-12 | 湖南大学 | 一种区块链的跨链消息传输方法、设备、存储介质 |
CN114663080A (zh) * | 2022-04-08 | 2022-06-24 | 北京京东乾石科技有限公司 | 基于区块链系统实现的数据处理方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108305056A (zh) * | 2018-03-27 | 2018-07-20 | 搜游网络科技(北京)有限公司 | 基于区块链的数据处理方法、装置及区块链节点网络 |
CN109446273A (zh) * | 2018-12-04 | 2019-03-08 | 深圳前海环融联易信息科技服务有限公司 | 区块链的数据同步方法、装置、计算机设备及存储介质 |
CN109981794A (zh) * | 2019-04-09 | 2019-07-05 | 广州蚁比特区块链科技有限公司 | 基于区块链节点网络的处理方法、装置及电子设备 |
US20190223089A1 (en) * | 2018-01-16 | 2019-07-18 | Cisco Technology, Inc. | USING A BLOCKCHAIN FOR OPTIMIZED FAST-SECURE ROAMING ON WLANs |
CN110059136A (zh) * | 2019-04-17 | 2019-07-26 | 江苏全链通信息科技有限公司 | 基于域名区块链的信息存储方法、设备及存储介质 |
CN110661822A (zh) * | 2018-06-28 | 2020-01-07 | 厦门本能管家科技有限公司 | 一种去中心的分布式数据存储方法及其装置 |
-
2020
- 2020-03-04 CN CN202010155381.6A patent/CN111400399B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190223089A1 (en) * | 2018-01-16 | 2019-07-18 | Cisco Technology, Inc. | USING A BLOCKCHAIN FOR OPTIMIZED FAST-SECURE ROAMING ON WLANs |
CN108305056A (zh) * | 2018-03-27 | 2018-07-20 | 搜游网络科技(北京)有限公司 | 基于区块链的数据处理方法、装置及区块链节点网络 |
CN110661822A (zh) * | 2018-06-28 | 2020-01-07 | 厦门本能管家科技有限公司 | 一种去中心的分布式数据存储方法及其装置 |
CN109446273A (zh) * | 2018-12-04 | 2019-03-08 | 深圳前海环融联易信息科技服务有限公司 | 区块链的数据同步方法、装置、计算机设备及存储介质 |
CN109981794A (zh) * | 2019-04-09 | 2019-07-05 | 广州蚁比特区块链科技有限公司 | 基于区块链节点网络的处理方法、装置及电子设备 |
CN110059136A (zh) * | 2019-04-17 | 2019-07-26 | 江苏全链通信息科技有限公司 | 基于域名区块链的信息存储方法、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
FEDERICO MATTEO BENČIĆ等: "Aurora: A Robust and Trustless Verification and Synchronization Algorithm for Distributed Ledgers", 《2019 IEEE INTERNATIONAL CONFERENCE ON BLOCKCHAIN (BLOCKCHAIN》, pages 1 - 2 * |
李嶒: "基于以太坊平台的DNS设计与实现", 《黄河科技学院学报》, vol. 22, no. 2, pages 57 - 63 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113645278A (zh) * | 2021-07-23 | 2021-11-12 | 湖南大学 | 一种区块链的跨链消息传输方法、设备、存储介质 |
CN113645278B (zh) * | 2021-07-23 | 2022-09-20 | 湖南大学 | 一种区块链的跨链消息传输方法、设备、存储介质 |
CN114663080A (zh) * | 2022-04-08 | 2022-06-24 | 北京京东乾石科技有限公司 | 基于区块链系统实现的数据处理方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111400399B (zh) | 2023-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20110320767A1 (en) | Parallelization of Online Learning Algorithms | |
CN110737664A (zh) | 一种区块链节点同步的方法及装置 | |
CN109815344B (zh) | 基于参数共享的网络模型训练系统、方法、装置和介质 | |
CN111522874B (zh) | 区块链共识方法、装置、计算机设备和存储介质 | |
CN112685391B (zh) | 一种服务数据迁移方法、装置、计算机设备和存储介质 | |
CN110008206A (zh) | 一种基于区块链系统的数据处理方法及装置 | |
CN110930152B (zh) | 一种基于区块链的数据处理方法及相关设备 | |
CN110599175A (zh) | 一种区块处理方法及相关设备 | |
CN111026767A (zh) | 区块链的数据存储方法、装置及硬件设备 | |
CN111400399A (zh) | 区块链系统的账本同步方法、装置及硬件设备 | |
CN110930254A (zh) | 基于区块链的数据处理方法、装置、终端及介质 | |
CN114239060A (zh) | 数据获取方法、装置、电子设备及存储介质 | |
CN112118133B (zh) | 基于自定义结构数据便于以太坊智能合约快速升级方法 | |
CN110737425A (zh) | 一种计费平台系统的应用程序的建立方法及装置 | |
CN112488835A (zh) | 业务处理方法、电子设备及可读存储介质 | |
US11120513B2 (en) | Capital chain information traceability method, system, server and readable storage medium | |
CN111368060B (zh) | 对话机器人的自学习方法、装置、系统、电子设备及介质 | |
CN109242680B (zh) | 一种区块链共识动态调整的方法 | |
CN112579343B (zh) | 区块链节点数据的恢复方法及装置 | |
CN111339189B (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
CN111339089B (zh) | 一种应用于区块链的数据存储与获取方法及装置 | |
CN113779116A (zh) | 对象排序方法、相关设备及介质 | |
CN111737729A (zh) | 基于业务数据区块链的评价数据存储方法及系统 | |
CN111831678A (zh) | 基于区块链的隐私保护方法及装置和电子设备 | |
CN111767060A (zh) | 多阶段灰度验证方法、装置、电子设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |