CN110113408A - 一种区块同步方法、设备和存储介质 - Google Patents

一种区块同步方法、设备和存储介质 Download PDF

Info

Publication number
CN110113408A
CN110113408A CN201910359570.2A CN201910359570A CN110113408A CN 110113408 A CN110113408 A CN 110113408A CN 201910359570 A CN201910359570 A CN 201910359570A CN 110113408 A CN110113408 A CN 110113408A
Authority
CN
China
Prior art keywords
block
height
section
downloading
equipment
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
Application number
CN201910359570.2A
Other languages
English (en)
Other versions
CN110113408B (zh
Inventor
何玉斌
王志文
吴思进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Jiaoda Chain Technology Co.,Ltd.
Original Assignee
Hangzhou Fuzamei Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Fuzamei Technology Co Ltd filed Critical Hangzhou Fuzamei Technology Co Ltd
Priority to CN201910359570.2A priority Critical patent/CN110113408B/zh
Publication of CN110113408A publication Critical patent/CN110113408A/zh
Application granted granted Critical
Publication of CN110113408B publication Critical patent/CN110113408B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (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)

Abstract

本发明提供一种区块链同步方法、设备和存储介质,该方法包括:若干区块链节点下载第一区块高度区间的各区块,并将下载的区块保存在本地数据库,以及,下载完所述第一区块高度区间的各区块后继续下载所述第一区块高度区间后的第二区块高度区间的各区块,直到最新的区块高度;按照区块高度从小到大的顺序依次读取并执行所述本地数据库中的各区块;其中,上述两个步骤独立并行执行。本发明诸多实施例提供的区块同步方法、设备和存储介质通过将区块下载任务和区块执行任务分为两个独立任务执行,在下载任务完成后继续请求下一区块区间以供区块大大提高了区块同步的效率。

Description

一种区块同步方法、设备和存储介质
技术领域
本申请涉及区块链技术领域,具体涉及一种区块同步方法、设备和存储介质。
背景技术
现有的区块链技术中,区块同步的方法是向多个区块链节点请求一个区间的区块,并按照区块高度顺序执行,等请求的所有区块都被顺序执行后才能进行下一区间区块的请求,现有的技术中,由于多个区块节点的网速不同,会出现后面区块高度的区块已经下载成功,而前面高度的区块高度还未被下载的情况,这时即使后面的区块已经下载成功,也无法成功执行,只能先保存在内存中,等待前面的区块下载并执行完成后才能执行,由此,一方面,大量的内存被占用,导致节点运行速度变慢,另一方面,导致区块同步的时间大大延长,效率很低。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种快速高效的区块同步方法、设备和存储介质。
第一方面,本发明提供一种区块同步方法,包括:
向若干区块链节点下载第一区块高度区间的各区块,并将下载的区块保存在本地数据库,以及,下载完所述第一区块高度区间的各区块后继续下载所述第一区块高度区间后的第二区块高度区间的各区块,直到最新的区块高度;
按照区块高度从小到大的顺序依次读取并执行所述本地数据库中的各区块;
其中,上述两个步骤独立并行执行。
进一步,还包括:
执行第一区块成功后,在本地数据库中删除所述第一区块。
进一步,所述向若干区块链节点下载第一区块高度区间的各区块包括:
向若干区块链节点分别发送若干对应的各区块区间下载请求信息;其中,区块高度信息包括请求的多个区块的区块高度信息。
第二方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的区块同步方法。
第三方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的区块同步方法。
发明的有益效果
本发明诸多实施例提供的区块同步方法、设备和存储介质通过将区块下载任务和区块执行任务分为两个独立任务执行,在下载任务完成后继续请求下一区块区间以供区块大大提高了区块同步的效率。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例提供的一种区块同步方法的流程图。
图2为图1所示方法的一优选实施方式的场景图。
图3为图1所述方法的一种优选实施方式的流程图。
图4为本发明一实施例提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1为本发明一实施例提供的一种区块同步方法的流程图。
如图1所示,在本实施例中,本发明提供一种区块同步方法,包括:
S11、向若干区块链节点下载第一区块高度区间的各区块,并将下载的区块保存在本地数据库,以及,下载完所述第一区块高度区间的各区块后继续下载所述第一区块高度区间后的第二区块高度区间的各区块,直到最新的区块高度;
S12、按照区块高度从小到大的顺序依次读取并执行所述本地数据库中的各区块;
具体地,以图2所示场景为例,步骤S11中,当前节点启动任务一,即向若干区块链节点分别请求第一区块高度区间的区块进行下载,如,向节点A请求区块高度为1-128的区块进行下载,向节点B请求区块高度为129-356的区块进行下载,向节点C请求区块高度为357-484的区块进行下载,并将下载完成的上述区块保存在本地数据库中,下载完上述各区块以后,再次向区块链节点请求后续的区块,如向节点A请求485-613的区块,以此类推,直到最新的区块高度下载完成。步骤S12中,在任务一开始执行时,任务二同时开始执行,即向本地数据库中按照区块高度从小到大的顺序获取区块并开始执行该区块。
在更堵实施例中,任务一完成所有的区块下载后退出下载任务,任务二在执行完本地数据库中的所有区块后退出执行任务。
图3为图1所述方法的一种优选实施方式的流程图。如图3所示,在一优选实施例中,上述方法还包括:
执行第一区块成功后,在本地数据库中删除第一区块。
具体地,在当前节点的任务二从本地数据库中获取到第一区块后,就删除存储在本地数据库的该第一区块。
在更多实施例中,除了上述所述的向区块链节点每次申请一个区块高度区间的区块,还可以是向一个区块链节点一次申请多个区块高度区间的区块,具体的,如可以向区块链节点A请求1-128区块,和357-484区块,向节点B请求129-356和485-613区块,等等。这样既可以让每个节点的网络充分利用起来,提高下载效率,还能减少请求的次数,缩短请求时间。
图4为本发明一实施例提供的一种设备的结构示意图。
如图4所示,作为另一方面,本申请还提供了一种设备400,包括一个或多个中央处理单元(CPU)401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储部分408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM403中,还存储有设备400操作所需的各种程序和数据。CPU401、ROM402以及RAM403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
以下部件连接至I/O接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至I/O接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
特别地,根据本公开的实施例,上述任一实施例描述的区块同步方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行区块同步方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。
作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请的区块同步方法。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以通过专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各所述单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (5)

1.一种区块同步方法,其特征在于,包括:
向若干区块链节点下载第一区块高度区间的各区块,并将下载的区块保存在本地数据库,以及,下载完所述第一区块高度区间的各区块后继续下载所述第一区块高度区间后的第二区块高度区间的各区块,直到最新的区块高度;
按照区块高度从小到大的顺序依次读取并执行所述本地数据库中的各区块;
其中,上述两个步骤独立并行执行。
2.根据权利要求1所述的方法,其特征在于,还包括:
执行第一区块成功后,在本地数据库中删除所述第一区块。
3.根据权利要求1或2所述的方法,其特征在于,所述向若干区块链节点下载第一区块高度区间的各区块包括:
向若干区块链节点分别发送若干对应的各区块区间下载请求信息;其中,区块高度信息包括请求的多个区块的区块高度信息。
4.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-3中任一项所述的方法。
5.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-3中任一项所述的方法。
CN201910359570.2A 2019-04-30 2019-04-30 一种区块同步方法、设备和存储介质 Active CN110113408B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910359570.2A CN110113408B (zh) 2019-04-30 2019-04-30 一种区块同步方法、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910359570.2A CN110113408B (zh) 2019-04-30 2019-04-30 一种区块同步方法、设备和存储介质

Publications (2)

Publication Number Publication Date
CN110113408A true CN110113408A (zh) 2019-08-09
CN110113408B CN110113408B (zh) 2020-08-14

Family

ID=67487765

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910359570.2A Active CN110113408B (zh) 2019-04-30 2019-04-30 一种区块同步方法、设备和存储介质

Country Status (1)

Country Link
CN (1) CN110113408B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110572473A (zh) * 2019-09-20 2019-12-13 腾讯科技(深圳)有限公司 一种区块头同步方法、设备及计算机可读存储介质
CN110597912A (zh) * 2019-09-17 2019-12-20 深圳前海微众银行股份有限公司 一种区块存储方法及装置
CN110737664A (zh) * 2019-10-21 2020-01-31 深圳前海微众银行股份有限公司 一种区块链节点同步的方法及装置
CN110888883A (zh) * 2019-11-26 2020-03-17 北京海益同展信息科技有限公司 数据存储方法、装置、系统和存储介质
CN111259074A (zh) * 2020-01-12 2020-06-09 杭州复杂美科技有限公司 区块同步方法、设备和存储介质
CN111432027A (zh) * 2020-04-14 2020-07-17 杭州复杂美科技有限公司 平行链区块同步方法、设备和存储介质
CN111787059A (zh) * 2020-05-28 2020-10-16 中钞信用卡产业发展有限公司杭州区块链技术研究院 追块同步方法、装置、电子设备及计算机存储介质
CN112202863A (zh) * 2020-09-24 2021-01-08 成都质数斯达克科技有限公司 数据同步方法、装置、电子设备及可读存储介质
CN113220790A (zh) * 2021-06-02 2021-08-06 湖北央中巨石信息技术有限公司 基于区块链的区块并发同步方法
EP4033374A4 (en) * 2019-09-20 2023-10-11 Jingdong Technology Information Technology Co., Ltd. METHOD AND DEVICE FOR SYNCHRONIZING NODE DATA

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107317842A (zh) * 2017-05-31 2017-11-03 北京大学深圳研究生院 基于ndn的区块链同步方法和装置
US20180205712A1 (en) * 2016-09-01 2018-07-19 Ca, Inc. Publicly readable blockchain registry of personally identifiable information breaches
CN108600353A (zh) * 2018-04-12 2018-09-28 北京天德科技有限公司 一种区块链节点的并行块同步方法
CN109165229A (zh) * 2018-08-23 2019-01-08 北京京东金融科技控股有限公司 本地区块同步的检验方法、装置、设备及存储介质
KR20190010515A (ko) * 2018-11-22 2019-01-30 김경준 블록체인 관리시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180205712A1 (en) * 2016-09-01 2018-07-19 Ca, Inc. Publicly readable blockchain registry of personally identifiable information breaches
CN107317842A (zh) * 2017-05-31 2017-11-03 北京大学深圳研究生院 基于ndn的区块链同步方法和装置
CN108600353A (zh) * 2018-04-12 2018-09-28 北京天德科技有限公司 一种区块链节点的并行块同步方法
CN109165229A (zh) * 2018-08-23 2019-01-08 北京京东金融科技控股有限公司 本地区块同步的检验方法、装置、设备及存储介质
KR20190010515A (ko) * 2018-11-22 2019-01-30 김경준 블록체인 관리시스템

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110597912A (zh) * 2019-09-17 2019-12-20 深圳前海微众银行股份有限公司 一种区块存储方法及装置
CN110597912B (zh) * 2019-09-17 2024-01-16 深圳前海微众银行股份有限公司 一种区块存储方法及装置
CN110572473A (zh) * 2019-09-20 2019-12-13 腾讯科技(深圳)有限公司 一种区块头同步方法、设备及计算机可读存储介质
EP4033374A4 (en) * 2019-09-20 2023-10-11 Jingdong Technology Information Technology Co., Ltd. METHOD AND DEVICE FOR SYNCHRONIZING NODE DATA
CN110737664A (zh) * 2019-10-21 2020-01-31 深圳前海微众银行股份有限公司 一种区块链节点同步的方法及装置
CN110888883A (zh) * 2019-11-26 2020-03-17 北京海益同展信息科技有限公司 数据存储方法、装置、系统和存储介质
CN111259074A (zh) * 2020-01-12 2020-06-09 杭州复杂美科技有限公司 区块同步方法、设备和存储介质
CN111432027B (zh) * 2020-04-14 2023-04-14 杭州复杂美科技有限公司 平行链区块同步方法、设备和存储介质
CN111432027A (zh) * 2020-04-14 2020-07-17 杭州复杂美科技有限公司 平行链区块同步方法、设备和存储介质
CN111787059A (zh) * 2020-05-28 2020-10-16 中钞信用卡产业发展有限公司杭州区块链技术研究院 追块同步方法、装置、电子设备及计算机存储介质
CN111787059B (zh) * 2020-05-28 2023-03-03 中钞信用卡产业发展有限公司杭州区块链技术研究院 追块同步方法、装置、电子设备及计算机存储介质
CN112202863B (zh) * 2020-09-24 2022-09-20 成都质数斯达克科技有限公司 数据同步方法、装置、电子设备及可读存储介质
CN112202863A (zh) * 2020-09-24 2021-01-08 成都质数斯达克科技有限公司 数据同步方法、装置、电子设备及可读存储介质
CN113220790A (zh) * 2021-06-02 2021-08-06 湖北央中巨石信息技术有限公司 基于区块链的区块并发同步方法

Also Published As

Publication number Publication date
CN110113408B (zh) 2020-08-14

Similar Documents

Publication Publication Date Title
CN110113408A (zh) 一种区块同步方法、设备和存储介质
US9424271B2 (en) Atomic incremental load for map-reduce systems on append-only file systems
CN109933592A (zh) 数据存储方法、数据回滚方法、设备和存储介质
US7444477B2 (en) System and method for efficiently performing memory intensive computations including a bidirectional synchronization mechanism for maintaining consistency of data
CN109359222A (zh) 数据存储方法及系统、设备和存储介质
CN109033001A (zh) 用于分配gpu的方法和装置
CN110392121A (zh) 平行链区块生成方法、设备和存储介质
CN109597677A (zh) 用于处理信息的方法和装置
CN110019123A (zh) 一种数据迁移方法和装置
CN109947565A (zh) 用于分配计算任务的方法和装置
CN107423893B (zh) 一种业务流程的全覆盖测试方法和装置
CN110287170A (zh) 数据库升级方法、状态数据调用方法、设备和存储介质
CN109508326A (zh) 用于处理数据的方法、装置和系统
CN109542455A (zh) 合约执行方法、合约精简方法、设备和存储介质
CN109450659A (zh) 区块延时广播方法、设备和存储介质
CN110473036A (zh) 一种生成订单号的方法和装置
US10140166B2 (en) Message oriented middleware with integrated rules engine
CN110019310A (zh) 数据处理方法及系统、计算机系统、计算机可读存储介质
CN110210972A (zh) 共识交易发送方法、设备和存储介质
CN110445843A (zh) 平行链区块推送方法、设备和存储介质
CN110955719A (zh) 一种数据存取处理设备、系统和方法
CN109558251A (zh) 页面结构信息修改的方法及终端
CN110321242A (zh) 数据处理方法和装置
CN109117199A (zh) 分布式程序的配置管理方法和装置
CN109993656A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210428

Address after: Room 408, building 13, Tengfei science and Technology Park, 388 Xinping street, Suzhou Industrial Park, Suzhou area, China (Jiangsu) pilot Free Trade Zone, Suzhou 215123, Jiangsu Province

Patentee after: Suzhou Jiaoda Chain Technology Co.,Ltd.

Patentee after: HANGZHOU FUZAMEI TECHNOLOGY Co.,Ltd.

Address before: 310000 Room 702, 7th Floor, Building 6, East Software Park, No. 90 Wensan Road, Xihu District, Hangzhou City, Zhejiang Province

Patentee before: HANGZHOU FUZAMEI TECHNOLOGY Co.,Ltd.