CN111797086B - 数据裁剪方法、设备和存储介质 - Google Patents

数据裁剪方法、设备和存储介质 Download PDF

Info

Publication number
CN111797086B
CN111797086B CN202010631492.XA CN202010631492A CN111797086B CN 111797086 B CN111797086 B CN 111797086B CN 202010631492 A CN202010631492 A CN 202010631492A CN 111797086 B CN111797086 B CN 111797086B
Authority
CN
China
Prior art keywords
block
block height
height
cut
current
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.)
Active
Application number
CN202010631492.XA
Other languages
English (en)
Other versions
CN111797086A (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.)
Nanjing Naiweixin Information Technology Co ltd
Original Assignee
Nanjing Naiweixin Information 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 Nanjing Naiweixin Information Technology Co ltd filed Critical Nanjing Naiweixin Information Technology Co ltd
Priority to CN202010631492.XA priority Critical patent/CN111797086B/zh
Publication of CN111797086A publication Critical patent/CN111797086A/zh
Application granted granted Critical
Publication of CN111797086B publication Critical patent/CN111797086B/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/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • 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
    • 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
    • G06F16/278Data partitioning, e.g. horizontal or vertical partitioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种数据裁剪方法、设备和存储介质,该方法包括:在当前区块高度为预配置的区块高度时,判断是否存在待裁剪的第一区块:是,则对各第一区块执行:删除第一区块的交易回执中的账户余额信息。本申请在保证区块链安全性的前提下,对区块链数据进行精简,从而降低区块链的使用成本。

Description

数据裁剪方法、设备和存储介质
技术领域
本申请涉及区块链技术领域,具体涉及一种数据裁剪方法、设备和存储介质。
背景技术
当前区块链***中,随着时间的运行数据越来越多,后续参与区块链运行所需要的资源越来越多,尤其是存储成本直接上升,这会间接提高区块链的使用成本,以及提高区块链的参与门槛。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种在保证区块链安全性的前提下,对区块链数据进行精简的数据裁剪方法、设备和存储介质。
第一方面,本发明提供一种适用于区块链节点的数据裁剪方法,上述方法包括:
在当前区块高度为预配置的区块高度时,判断是否存在待裁剪的第一区块:
是,则对各第一区块执行:删除第一区块的交易回执中的账户余额信息。
第二方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的数据裁剪方法。
第三方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的数据裁剪方法。
本发明诸多实施例提供的数据裁剪方法、设备和存储介质通过在当前区块高度为预配置的区块高度时,判断是否存在待裁剪的第一区块:是,则对各第一区块执行:删除第一区块的交易回执中的账户余额信息的方法,在保证区块链安全性的前提下,对区块链数据进行精简,从而降低区块链的使用成本。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例提供的一种数据裁剪方法的流程图。
图2为本发明一实施例提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1为本发明一实施例提供的一种数据裁剪方法的流程图。如图1所示,在本实施例中,本发明提供一种适用于区块链节点的数据裁剪方法,上述方法包括:
S121:在当前区块高度为预配置的区块高度时,判断是否存在待裁剪的第一区块:
是,则执行步骤S122:对各第一区块执行:删除第一区块的交易回执中的账户余额信息。
具体地,以预配置的区块高度为可以整除1000的区块高度;S121包括“在当前区块高度为预配置的区块高度时,根据当前区块高度与预配置的最大回滚深度之差计算第一区块高度;将第一区块高度范围中的各区块确认为待裁剪的第一区块;其中,第一区块高度范围的初始区块高度为待裁剪的区块高度,第一区块高度范围的末尾区块高度为第一区块高度”,S122后还包括“将待裁剪的区块高度更新为第一区块高度加一”;预配置的最大回滚深度为100为例;假设当前区块高度为5000,待裁剪的区块高度为3901;
由于当前区块高度为5000,可以整除1000,则区块链节点执行步骤S121,根据当前区块高度与预配置的最大回滚深度之差计算第一区块高度,第一区块高度为4900;将第一区块高度范围[3901,4900]中的各区块block(3901)~block(4900)确认为待裁剪的第一区块;
区块链节点执行步骤S122:对block(3901)~block(4900)分别执行:以block(3901)为例,删除block(3901)的交易回执中的账户余额信息;block(3902)~block(4900)与block(3901)在当前步骤的原理相同,不再赘述。
将待裁剪的区块高度更新为4901。
当前实施例以预配置的区块高度为可以整除1000的区块高度;S121包括“在当前区块高度为预配置的区块高度时,根据当前区块高度与预配置的最大回滚深度之差计算第一区块高度;将第一区块高度范围中的各区块确认为待裁剪的第一区块;其中,第一区块高度范围的初始区块高度为待裁剪的区块高度,第一区块高度范围的末尾区块高度为第一区块高度”,S122后还包括“将待裁剪的区块高度更新为第一区块高度加一”;预配置的最大回滚深度为100为例;假设当前区块高度为5000,待裁剪的区块高度为3901对本申请的数据裁剪原理作了示例性的阐述。
在更多实施例中,预配置的区块高度还可以根据实际需求进行配置,例如配置为:可以整除500的区块高度,可实现相同的技术效果。
在更多实施例中,第一区块高度的计算方式还可以根据实际需求进行配置,例如配置为:根据当前区块高度与1.5倍的预配置的最大回滚深度之差计算第一区块高度,可实现相同的技术效果。
在更多实施例中,待裁剪的区块高度与第一区块高度范围的初始区块高度还可以根据实际需求进行配置,例如,待裁剪的区块高度如果更新为第一区块高度,则后一次触发数据裁剪方法时,第一区块高度范围的初始区块高度为待裁剪的区块高度加一,可实现相同的技术效果。
在更多实施例中,预配置的最大回滚深度还可以根据实际需求进行配置,例如配置为200,可实现相同的技术效果。
上述实施例在保证区块链安全性的前提下,对区块链数据进行精简,从而降低区块链的使用成本。
优选地,上述判断是否存在待裁剪的第一区块包括:
根据当前区块高度与预配置的最大回滚深度之差计算第一区块高度;
将第一区块高度范围中的各区块确认为待裁剪的第一区块;其中,第一区块高度范围的初始区块高度为待裁剪的区块高度,第一区块高度范围的末尾区块高度为第一区块高度;
删除第一区块的交易回执中的账户余额信息后,还包括:
将待裁剪的区块高度更新为第一区块高度加一。
上述实施例的数据裁剪原理可参考图1所示的方法,此处不再赘述。
优选地,在当前区块高度为预配置的区块高度时前,上述方法还包括:
在当前节点重新启动区块链服务时,根据当前区块高度与两倍的预配置的最大回滚深度之差计算第二区块高度;
判断第二区块高度是否大于待裁剪的区块高度:
是,则将第二区块高度范围中的各区块确认为待裁剪的第二区块;其中,第二区块高度范围的初始区块高度为待裁剪的区块高度,第二区块高度范围的末尾区块高度为第二区块高度;以及,
暂停区块同步任务,并对各第二区块执行:删除第二区块的交易回执中的账户余额信息;
将待裁剪的区块高度更新为第二区块高度加一;
开启区块同步任务。
具体地,在当前节点重新启动区块链服务时,暂停区块链节点的区块同步任务。在完成各第二区块的交易回执中的账户余额信息的删除后,开启区块同步任务,且往后的第一区块的数据裁剪方法都是边进行区块同步边进行数据裁剪。
优选地,在保存辅助查询交易时,对交易信息只保存相应的交易所在的区块的区块高度,和交易在所在区块中的索引以供根据该区块高度和该索引查询出具体交易信息。
优选地,区块链节点在接收一个新区块时,将该新区块的区块数据进行缓存。
上述实施例使得执行该新区块的裁剪方法时,无需从磁盘中获取该新区块的区块数据。
安全的历史区块中的交易回执中的账户余额信息被删除后,区块链浏览器中只能显示一个用户账户的历史交易信息,但无法直观的看到历史交易信息所对应的具体账户余额信息。
假设用户甲的历史交易包括tx1~tx10;
若用户乙需要查询用户甲的tx5执行完成时的账户余额信息,区块链节点查询到tx1~tx10,根据用户甲的初始账户余额信息,tx1~tx5的用户甲的账户余额增量信息计算出用户甲的tx5执行完成时的账户余额信息,并返回给用户乙。
图2为本发明一实施例提供的一种设备的结构示意图。
如图2所示,作为另一方面,本申请还提供了一种设备200,包括一个或多个中央处理单元(CPU)201,其可以根据存储在只读存储器(ROM)202中的程序或者从存储部分208加载到随机访问存储器(RAM)203中的程序而执行各种适当的动作和处理。在RAM203中,还存储有设备200操作所需的各种程序和数据。CPU201、ROM202以及RAM203通过总线204彼此相连。输入/输出(I/O)接口205也连接至总线204。
以下部件连接至I/O接口205:包括键盘、鼠标等的输入部分206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分207;包括硬盘等的存储部分208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分209。通信部分209经由诸如因特网的网络执行通信处理。驱动器210也根据需要连接至I/O接口205。可拆卸介质211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器210上,以便于从其上读出的计算机程序根据需要被安装入存储部分208。
特别地,根据本公开的实施例,上述任一实施例描述的方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行上述任一方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分209从网络上被下载和安装,和/或从可拆卸介质211被安装。
作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请提供的方法。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的***来实现,或者可以通过专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各所述单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (4)

1.一种数据裁剪方法,其特征在于,适用于区块链节点,所述方法包括:
在当前区块高度为预配置的区块高度时,判断是否存在待裁剪的第一区块:
是,则对各所述第一区块执行:删除所述第一区块的交易回执中的账户余额信息;
所述在当前区块高度为预配置的区块高度时前,还包括:
在当前节点重新启动区块链服务时,根据当前区块高度与两倍的预配置的最大回滚深度之差计算第二区块高度;
判断所述第二区块高度是否大于待裁剪的区块高度:
是,则将第二区块高度范围中的各区块确认为待裁剪的第二区块;其中,所述第二区块高度范围的初始区块高度为待裁剪的区块高度,所述第二区块高度范围的末尾区块高度为所述第二区块高度;以及,暂停区块同步任务,并对各所述第二区块执行:删除所述第二区块的交易回执中的账户余额信息;
将所述待裁剪的区块高度更新为所述第二区块高度加一;
开启所述区块同步任务。
2.根据权利要求1所述的方法,其特征在于,所述判断是否存在待裁剪的第一区块包括:
根据当前区块高度与预配置的最大回滚深度之差计算第一区块高度;
将第一区块高度范围中的各区块确认为待裁剪的第一区块;其中,所述第一区块高度范围的初始区块高度为待裁剪的区块高度,所述第一区块高度范围的末尾区块高度为所述第一区块高度;
所述删除所述第一区块的交易回执中的账户余额信息后,还包括:
将所述待裁剪的区块高度更新为所述第一区块高度加一。
3.一种设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-2中任一项所述的方法。
4.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-2中任一项所述的方法。
CN202010631492.XA 2020-07-03 2020-07-03 数据裁剪方法、设备和存储介质 Active CN111797086B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010631492.XA CN111797086B (zh) 2020-07-03 2020-07-03 数据裁剪方法、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010631492.XA CN111797086B (zh) 2020-07-03 2020-07-03 数据裁剪方法、设备和存储介质

Publications (2)

Publication Number Publication Date
CN111797086A CN111797086A (zh) 2020-10-20
CN111797086B true CN111797086B (zh) 2024-07-05

Family

ID=72810207

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010631492.XA Active CN111797086B (zh) 2020-07-03 2020-07-03 数据裁剪方法、设备和存储介质

Country Status (1)

Country Link
CN (1) CN111797086B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114500588B (zh) * 2021-12-15 2023-09-19 杭州宇链科技有限公司 基于区块链的物联网终端验证云端数据的方法及***

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107181797B (zh) * 2017-05-11 2020-03-06 中国农业银行股份有限公司 一种区块链的区块压缩方法和***
CN107423426B (zh) * 2017-08-02 2020-06-02 众安信息技术服务有限公司 一种区块链块数据的数据归档方法及电子设备
KR102331947B1 (ko) * 2017-09-28 2021-11-25 주식회사 케이티 블록체인에서 데이터 관리 시스템 및 방법
CN108881459A (zh) * 2018-07-02 2018-11-23 甘肃山呼信息技术有限公司 一种面向实际应用的高可扩展公用区块链***
US11036395B2 (en) * 2018-10-18 2021-06-15 Nec Corporation Secure and transparent pruning for blockchains
US11392613B2 (en) * 2018-11-01 2022-07-19 Washington University Systems and methods for probabilistic blockchains
US11443317B2 (en) * 2018-12-19 2022-09-13 Salt Blockchain Inc. Tracing flow of tagged funds on a blockchain
CN110399373B (zh) * 2019-06-26 2024-02-02 杭州慧牧科技有限公司 一种区块链账本存储***、存储查询方法及删除方法
CN110442577A (zh) * 2019-07-15 2019-11-12 杭州复杂美科技有限公司 一种状态数据存储、查询和管理方法、设备及存储介质
CN110727644B (zh) * 2019-09-29 2022-06-24 南京金宁汇科技有限公司 一种区块链数据裁剪的方法、***及存储介质
CN111046029A (zh) * 2019-12-04 2020-04-21 杭州复杂美科技有限公司 数据裁剪方法、设备和存储介质
CN111143341B (zh) * 2019-12-25 2023-12-19 江苏众享金联科技有限公司 一种基于智能合约的区块链账本瘦身方法
CN111274318B (zh) * 2020-01-16 2023-04-25 杭州趣链科技有限公司 一种区块链状态数据的存储、回滚方法、设备和存储介质

Also Published As

Publication number Publication date
CN111797086A (zh) 2020-10-20

Similar Documents

Publication Publication Date Title
CN108694075B (zh) 处理报表数据的方法、装置、电子设备和可读存储介质
US20200250677A1 (en) Processing service requests based on risk identification
CN108287708B (zh) 一种数据处理方法、装置、服务器及计算机可读存储介质
CN112749358A (zh) 页面渲染方法和装置、电子设备以及存储介质
CN109766148B (zh) 用于处理接口方法调用的方法和装置
KR101426575B1 (ko) 분산형 프로세싱 시스템 및 방법
CN111797086B (zh) 数据裁剪方法、设备和存储介质
CN109872139B (zh) 交易替换方法、设备和存储介质
CN113312553B (zh) 一种用户标签的确定方法和装置
CN112734309B (zh) 用于物品的车辆调度方法、装置、设备和计算机可读介质
CN113703946A (zh) 应用恢复方法及其装置、电子设备、计算机可读存储介质
CN113742389A (zh) 一种业务处理方法和装置
CN110782310B (zh) 从第三方平台异步获取用户属性信息的方法、装置和***
CN110322350B (zh) 裁剪共识网络中空区块的方法、装置、设备和存储介质
CN114579054A (zh) 一种数据处理方法、装置、电子设备及计算机可读介质
CN112784139B (zh) 查询方法、装置、电子设备和计算机可读介质
CN115437709A (zh) 应用首页闪屏资源的加载方法及装置
CN114666319A (zh) 数据下载方法、装置、电子设备和可读存储介质
CN114139605A (zh) 分布式的模型训练方法、***、设备以及存储介质
CN114610701A (zh) 任务数据处理方法、装置、电子设备和介质
CN113568706A (zh) 针对业务的容器调整方法、装置、电子设备和存储介质
CN113468423A (zh) 针对车辆的信息推荐方法、装置、车辆和电子设备
CN112311843A (zh) 数据加载方法和装置
CN114222985A (zh) 包括用于访问和管理利用和作业数据的数据库模式的***和服务器
CN112732720A (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
TA01 Transfer of patent application right

Effective date of registration: 20240401

Address after: Unit 304, Building 1-4, Qishanyuan, Shangjie Town, Minhou County, Fuzhou City, Fujian Province, 350000

Applicant after: Lin Shangyu

Country or region after: China

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

Applicant before: HANGZHOU FUZAMEI TECHNOLOGY Co.,Ltd.

Country or region before: China

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20240612

Address after: 211135 300 Chi Hui Road, Qilin science and Technology Innovation Park, Jiangning District, Nanjing, Jiangsu

Applicant after: NANJING NAIWEIXIN INFORMATION TECHNOLOGY Co.,Ltd.

Country or region after: China

Address before: Unit 304, Building 1-4, Qishanyuan, Shangjie Town, Minhou County, Fuzhou City, Fujian Province, 350000

Applicant before: Lin Shangyu

Country or region before: China

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant