CN111143341B - 一种基于智能合约的区块链账本瘦身方法 - Google Patents
一种基于智能合约的区块链账本瘦身方法 Download PDFInfo
- Publication number
- CN111143341B CN111143341B CN201911359045.7A CN201911359045A CN111143341B CN 111143341 B CN111143341 B CN 111143341B CN 201911359045 A CN201911359045 A CN 201911359045A CN 111143341 B CN111143341 B CN 111143341B
- Authority
- CN
- China
- Prior art keywords
- data
- transaction
- unexpired
- blockchain
- block
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 230000008859 change Effects 0.000 claims description 20
- 230000001960 triggered effect Effects 0.000 claims description 7
- 230000009471 action Effects 0.000 claims description 6
- 239000013585 weight reducing agent Substances 0.000 claims description 5
- 239000002699 waste material Substances 0.000 abstract description 4
- 238000005336 cracking Methods 0.000 abstract description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 206010059411 Prolonged expiration Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
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/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- 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/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- 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
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)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于智能合约的区块链账本瘦身方法,包括如下方法步骤:步骤一:区块链账本使用特定数据结构来记录;步骤二:记录所有未过期交易信息的账本;步骤三:底层系统智能合约根据交易数据实效性清理过期账本数据;步骤四:采用延长数据实效性设计区块链账本数据和未到期交易账本数据的方法变更数据的实效性。本发明一种基于智能合约的区块链账本瘦身方法,利用智能合约技术将到期的交易数据从链上剥离,区块链账本数据根据数据的实效性瘦身,从而可以精简数据库,减少存储空间的浪费,提高读取速度,减少硬件开支;同时将交易数据从链上剥离,还可以减小数据被破解泄漏的风险,提高数据的安全性能。
Description
技术领域
本发明涉及区块链账本数据储存领域,特别涉及一种基于智能合约的区块链账本瘦身方法。
背景技术
区块链已经广泛应用在金融、政务、供应链、电力等领域,除了交易数据外,还有很多合同、资产、物流等合约信息上链,链上记录的数据急剧增长。由于区块链链式账本的特点,账本数据只能增加不能减少,尤其在高频、大交易量、大平台、巨量数据存储在区块链上时,区块链节点记录的数据爆炸式的增长,而且账本是分布式存储的,一份数据对存储空间的占用是多倍增加的,里面参杂很多“过期数据”,势必造成账本数据庞大,读取检索速度变慢,最终拖累整个区块链网络无法工作。
同时,很多上链数据,比如合同,是有生命周期的,周期结束后,其数据对合同双方没有继续存储的价值。想这样的数据还有很多,如果一直存在链上,会浪费存储空间和增加数据被破解泄漏的风险。
因此,本申请提出一种基于智能合约的区块链账本瘦身方法,利用智能合约技术,根据数据的实效性实现区块链账本数据瘦身,可以精简数据库,提高读取速度,减少硬件开支。
发明内容
本发明的主要目的在于提供一种基于智能合约的区块链账本瘦身方法,可以有效解决背景技术中的问题。
为实现上述目的,本发明提供如下技术方案:一种基于智能合约的区块链账本瘦身方法,包括如下方法步骤:
步骤一:区块链账本使用特定数据结构来记录;
步骤二:记录所有未过期交易信息的账本;
步骤三:底层系统智能合约根据交易数据实效性清理过期账本数据;
步骤四:采用延长数据实效性设计区块链账本数据和未到期交易账本数据的方法变更数据的实效性。
优选的,所述步骤一中的特定的数据结构是指:区块结构分为两部分,一部分称之为区块头,专门记录上一区块的hash、本区块链数据的hash和数据的有效期,为链式结构,保证区块的连续性;另一部分成为区块体,记录上链数据,上链数据不能增加也不能修改,但可以被删除。
优选的,所述步骤二中的记录所有未过期交易信息的账本是指:记录所有未过期的交易号和其所在区块高度的账本,交易发生时增加未过期交易记录,区块链底层系统智能合约检测到交易数据过期时删除区块链账本,更新未过期交易账本。
优选的,所述步骤三中底层系统智能合约根据交易数据实效性清理过期账本数据具体是指:区块链底层系统智能合约定期检查“未到期交易账本”数据的实效性,交易数据到期时,触发删除区块链账本动作和更新“未过期交易账本”,删除和更新操作的日志会被记录在新的区块上,确保删除是由系统顶层智能合约触发,不是人为操作;执行删除动作时,将交易数据从链上剥离,完成区块链账本数据的瘦身。
优选的,所述步骤四中变更数据实效性的主要流程如下:
变更数据有效期:在数据未到期之前,由智能合约触发,以交易的形式,记录在新的区块中,记录对应的交易所在区块高度、交易hash和有效期变更,不记录原交易数据,收录在新区块的数据有效期,设置为变更后的到期时间;
更新数据有效期:对未过期交易账本更新交易数据的有效期和记录变更有效期产生的新交易的区块高度、交易hash和交易数据有效期;
到期数据清除:在变更后的有效期到期后,区块链账本将把交易原始数据从链上删除。
优选的,所述变更数据有效期步骤中,变更后的有效期是个未发生的未来时间点。
优选的,所述到期数据清除步骤中,在变更后的有效期到期时,变更记录产生的交易数据同时到期,区块链账本将变更记录从链上清除。
与现有技术相比,本发明具有如下有益效果:该种基于智能合约的区块链账本瘦身方法,利用智能合约技术将到期的交易数据从链上剥离,区块链账本数据根据数据的实效性瘦身,从而可以精简数据库,减少存储空间的浪费,提高读取速度,减少硬件开支;同时将交易数据从链上剥离,还可以减小数据被破解泄漏的风险,提高数据的安全性能。
附图说明
图1为本发明所述一种基于智能合约的区块链账本瘦身方法流程图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
参照图1,一种基于智能合约的区块链账本瘦身方法,包括如下方法步骤:
步骤一:区块链账本使用特定数据结构来记录
区块链账本使用特定的数据结构来记录,特定的数据结构是指:区块结构分为两部分,一部分称之为区块头,专门记录上一区块的hash、本区块链数据的hash和数据的有效期,为链式结构,保证区块的连续性;另一部分成为区块体,记录上链数据,上链数据不能增加也不能修改,但可以被删除。
步骤二:未过期交易账本
记录所有未过期交易信息的账本是指:记录所有未过期的交易号和其所在区块高度的账本,交易发生时增加未过期交易记录,区块链底层系统智能合约检测到交易数据过期时删除区块链账本,更新未过期交易账本。
步骤三:底层系统智能合约根据交易数据实效性清理过期账本数据
区块链底层系统智能合约定期检查“未到期交易账本”数据的实效性,交易数据到期时,触发删除区块链账本动作和更新“未过期交易账本”,删除和更新操作的日志会被记录在新的区块上,确保删除是由系统顶层智能合约触发,不是人为操作。执行删除动作时,将交易数据从链上剥离,完成区块链账本数据的瘦身。
步骤四:变更数据实效性的方法
延长数据实效性设计区块链账本数据和未到期交易账本数据,主要流程如下:
1)区块链账本上面记录的数据和到期时间无法修改,延长有效期也必须由智能合约触发,以交易的形式,记录在新的区块中,记录对应的交易所在区块高度、交易hash和有效期变更,不记录原交易数据,收录在新区块的数据有效期,设置为变更后的到期时间。
2)数据未到期,方可变更有效期,变更后的有效期,不能落后当前时间,一定是个未发生的未来时间点。
3)未过期交易账本更新交易数据的有效期和记录变更有效期产生的新交易的区块高度、交易hash和交易数据有效期。
4)变更后的有效期,到期后,区块链账本将把交易原始数据从链上删除,那时变更记录产生的交易数据同时到期,变更记录会被从链上清除。
经过上述流程,完成交易数据有效期的变更和到期删除数据,达到了区块链账本瘦身的效果;从而可以精简数据库,减少存储空间的浪费,提高读取速度,减少硬件开支;同时将交易数据从链上剥离,还可以减小数据被破解泄漏的风险,提高数据的安全性能。而过期数据已经被从链上移除,只能查询到其交易hash和区块高度。
最后应说明的是:显然,上述实施例仅仅是为清楚地说明本发明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明的保护范围之中。
Claims (3)
1.一种基于智能合约的区块链账本瘦身方法,其特征在于,包括如下方法步骤:
步骤一:区块链账本使用特定数据结构来记录;
步骤二:记录所有未过期交易信息的账本;
步骤三:底层系统智能合约根据交易数据实效性清理过期账本数据;
步骤四:采用设计区块链账本数据和未到期交易账本数据的方法变更数据的实效性;
所述步骤一中的特定的数据结构是指:区块结构分为两部分,一部分称之为区块头,专门记录上一区块的hash、本区块链数据的hash和数据的有效期,为链式结构,保证区块的连续性;另一部分成为区块体,记录上链数据,上链数据不能增加也不能修改,但能够被删除;
所述步骤二中的记录所有未过期交易信息的账本是指:记录所有未过期的交易号和其所在区块高度的账本,交易发生时增加未过期交易记录,区块链底层系统智能合约检测到交易数据过期时删除区块链账本,更新未过期交易账本;
所述步骤三中底层系统智能合约根据交易数据实效性清理过期账本数据具体是指:区块链底层系统智能合约定期检查“未到期交易账本”数据的实效性,交易数据到期时,触发删除区块链账本动作和更新“未过期交易账本”,删除和更新操作的日志会被记录在新的区块上,确保删除是由系统顶层智能合约触发,不是人为操作;执行删除动作时,将交易数据从链上剥离,完成区块链账本数据的瘦身;
所述步骤四中变更数据实效性的流程如下:
变更数据有效期:在数据未到期之前,由智能合约触发,以交易的形式,记录在新的区块中,记录对应的交易所在区块高度、交易hash和有效期变更,不记录原交易数据,收录在新区块的数据有效期,设置为变更后的到期时间;
更新数据有效期:对未过期交易账本更新交易数据的有效期和记录变更有效期产生的新交易的区块高度、交易hash和交易数据有效期;
到期数据清除:在变更后的有效期到期后,区块链账本将把交易原始数据从链上删除。
2.根据权利要求1所述的基于智能合约的区块链账本瘦身方法,其特征在于:所述变更数据有效期步骤中,变更后的有效期是个未发生的未来时间点。
3.根据权利要求2所述的基于智能合约的区块链账本瘦身方法,其特征在于:所述到期数据清除步骤中,在变更后的有效期到期时,变更记录产生的交易数据同时到期,区块链账本将变更记录从链上清除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911359045.7A CN111143341B (zh) | 2019-12-25 | 2019-12-25 | 一种基于智能合约的区块链账本瘦身方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911359045.7A CN111143341B (zh) | 2019-12-25 | 2019-12-25 | 一种基于智能合约的区块链账本瘦身方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111143341A CN111143341A (zh) | 2020-05-12 |
CN111143341B true CN111143341B (zh) | 2023-12-19 |
Family
ID=70520119
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911359045.7A Active CN111143341B (zh) | 2019-12-25 | 2019-12-25 | 一种基于智能合约的区块链账本瘦身方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111143341B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111340496B (zh) * | 2020-05-20 | 2020-10-27 | 南京如般量子科技有限公司 | 一种自动优化历史交易数据的区块链系统及方法 |
CN111797086B (zh) * | 2020-07-03 | 2024-07-05 | 南京鼐威欣信息技术有限公司 | 数据裁剪方法、设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109274728A (zh) * | 2018-09-03 | 2019-01-25 | 北京飞纳泰科信息技术有限公司 | 区块链数据生命周期管理方法 |
CN110263014A (zh) * | 2019-05-15 | 2019-09-20 | 广州致链科技有限公司 | 面向时序型数据的区块链存储系统及方法 |
CN110597825A (zh) * | 2019-09-24 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置及节点设备 |
-
2019
- 2019-12-25 CN CN201911359045.7A patent/CN111143341B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109274728A (zh) * | 2018-09-03 | 2019-01-25 | 北京飞纳泰科信息技术有限公司 | 区块链数据生命周期管理方法 |
CN110263014A (zh) * | 2019-05-15 | 2019-09-20 | 广州致链科技有限公司 | 面向时序型数据的区块链存储系统及方法 |
CN110597825A (zh) * | 2019-09-24 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置及节点设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111143341A (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110879813B (zh) | 一种基于二进制日志解析的MySQL数据库增量同步实现方法 | |
CN111143341B (zh) | 一种基于智能合约的区块链账本瘦身方法 | |
CN101216821B (zh) | 数据采集系统的存储管理方法 | |
CN107944868A (zh) | 一种基于区块链智能合约的电子存证系统和管理方法 | |
CN110033243B (zh) | 基于区块链智能合约的主链存证方法、系统及存储介质 | |
CN109359159A (zh) | 分布式存储方法、系统及设备 | |
CN109857724B (zh) | 基于区块链实现支持多种数据库的方法及设备 | |
CN108829782B (zh) | 数据表清理方法、服务器及计算机可读存储介质 | |
CN101217571B (zh) | 用于多副本数据网格系统中的写/读文件操作的方法 | |
CN101382949B (zh) | 一种数据库表的管理方法及装置 | |
CN108241743A (zh) | 一种区块链快照方法 | |
CN111143476A (zh) | 一种基于数据库的智能合约数据快速查询方法 | |
CN102800005A (zh) | 网络广告投放方法与装置 | |
CN110597785B (zh) | 基于区块链和私有云的汽车零部件再制造共享系统 | |
CN103679048A (zh) | 用于多系统全景中的数据保密和销毁的系统和方法 | |
CN111813866B (zh) | 一种改进的区块链账本同步方法 | |
CN107066349A (zh) | 一种集群文件系统数据保护的方法及系统 | |
CN107807932A (zh) | 一种基于路径枚举的层级数据管理方法和系统 | |
CN107402870A (zh) | 一种元数据服务器中日志段的处理方法及装置 | |
EP4290802A1 (en) | Blockchain editing method and blockchain node | |
US20060106894A1 (en) | Object replication using information quality of service | |
CN107273449B (zh) | 一种基于内存数据库的断点处理方法及系统 | |
CN110083372B (zh) | 一种区块链数据版本升级方法 | |
CN109819013A (zh) | 一种基于云存储的区块链存储容量优化方法 | |
CN103136315A (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 |