CN109819013B - 一种基于云存储的区块链存储容量优化方法 - Google Patents
一种基于云存储的区块链存储容量优化方法 Download PDFInfo
- Publication number
- CN109819013B CN109819013B CN201811507332.3A CN201811507332A CN109819013B CN 109819013 B CN109819013 B CN 109819013B CN 201811507332 A CN201811507332 A CN 201811507332A CN 109819013 B CN109819013 B CN 109819013B
- Authority
- CN
- China
- Prior art keywords
- block
- cloud
- block chain
- time
- blocks
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于云存储的区块链存储容量优化方法,步骤如下:(1)区块链中各个区块按时间顺序排列,在后面区块产生过程中,前面区块中存储的交易记录可能被查询。随时间推移,各个区块中交易记录被查询的频次发生变化,以此来优化遗忘曲线;(2)根据遗忘曲线求出各个区块的被查询概率,根据被查询概率对区块链进行分割,分为可遗忘部分和不可遗忘部分;(3)可遗忘部分区块打包存储至云端,不可遗忘部分区块仍保存在区块链;(4)随区块的增加和时间推移重复步骤(2)和步骤(3)。本发明可以有效地缓解节点本地存储压力,也同样适用于有多个用户的情况。避免了因要查询的信息不在本地而大量广播,造成系统整体运行效率降低的问题。
Description
技术领域
本发明涉及一种基于云存储的区块链存储容量优化方法。
背景技术
区块链是按时间顺序将数据区块以链条的方式组合成特定数据结构,并以密码学方式保证的不可篡改和不可伪造的去中心化共享总账。区块链技术要求网络中全节点保存完整的区块链信息。随着时间推移,交易记录数据海量增长,受节点存储能力限制,区块链存储容量也受到限制。
在现有的区块链存储容量优化方法中,有迷你区块链项目,通过删减区块链上过期的交易信息来减少空间占用。这种方法实际上改变了区块链的结构,而且更为复杂。另外也有将区块链分为多段,按某种副本分配策略计算出各段区块需要保存的副本数后,分配给多个存储节点分别进行存储。但这种方法在需要验证交易正确性时,如果想要查询的区块不在本节点保存,节点就需要向其他节点发送请求,进而网络中将会出现许多区块请求广播,影响整体运行效率。
发明内容
本发明的目的是针对现有的区块链存储容量优化方法的不足,提出一种基于云存储的区块链存储容量优化方法。
为达到上述目的,本发明采用如下技术方案:
一种基于云存储的区块链存储容量优化方法,具体操作步骤如下:
(1)区块链中各个区块按时间顺序排列,在后面区块产生过程中,前面区块中存储的交易记录可能被查询,随时间推移,各个区块中交易记录被查询的频次发生变化,以此来优化遗忘曲线;
(2)根据遗忘曲线求出各个区块的被查询概率,根据被查询概率对区块链进行分割,分为可遗忘部分和不可遗忘部分;
(3)可遗忘部分区块打包存储至云端,不可遗忘部分仍保存在区块链;
(4)随区块的增加和时间推移重复步骤(2)和步骤(3),使得一直有区块被打包存储至云端。
所述步骤(1)中,从上一区块创建结束到这一区块创建之间发生的交易记录,都被取得记账权的矿工打包存到区块中,并链接到区块链主链中。其中记录的所有交易记录都要经历验证过程,这就可能需要查询之前区块中存储的交易记录。但随着时间推移,各个区块可能被查询的频次发生变化。
采用牛顿冷却模型拟合遗忘曲线,函数表达式为其中t0指初始时刻,此模型中设为0;α为“遗忘系数”,此模型中设为0.1;T0为初始时刻时查询频次,此模型中设为100;遗忘曲线主要用来模拟各个区块被查询频次随着时间推移变化的过程,并以此来区分出“旧区块”和“新区块”,以便后续进行不同处理。
所述步骤(2)中,根据遗忘曲线对区块链进行分割,具体操作步骤为:
1)预先设置阈值门限D和M;
2)对于每一个区块,将区块产生的这一时刻记为t=0,此后每有一个新区块产生就将t增加一个时间单位;
3)每一时刻都对各个区块的遗忘曲线求0-t上的积分,积分的倒数定义为被查询概率;
4)当某个区块某时刻求得的被查询概率到达或小于门限D后,表示这一区块的查询频次已经降低到一定程度,定义为可遗忘区块;
5)当这种可遗忘区块数量达到阈值M时,就将M个可遗忘区块打包存储至云端,以此保证节点的物理存储能力足以保证存储当前区块链。
所述步骤(3)中,数据存储到云端依然以链式结构的形式存储,在多云环境中进行分布式存储,以保证一定的安全性;因为即使是查询频次已经降低至一定程度的区块,也并不排除会被查询的可能性,所以将数据存储至云端时,除了考虑区块上传成本,还需要同时考虑从云端查询数据并将信息返回本地的成本。
与现有技术相比,本发明具有如下的优点:
本发明方法通过使用云存储提高存储效率,通过遗忘曲线对区块链中各区块存储的交易记录被查询频次进行判断。以此将区块分为存储至云端的部分和保存在本地区块链的部分,缓解了数据量增多时节点的存储压力。根据查询频次决定该区块是否存至云端,这在一定程度上提高了系统整体运行效率。同时也适用于有多个用户的实际应用场景。
附图说明
图1为本发明方法的流程图。
图2为根据遗忘曲线对区块链进行分割的流程图。
图3为冷却模型模拟遗忘过程曲线图。
具体实施方式
为了便于本领域技术人员理解,下面将结合附图对本发明进行进一步描述。
如图1所示,基于云存储的区块链存储容量优化方法,包括以下步骤:
(1)区块链中各个区块按时间顺序排列,在后面区块产生过程中,前面区块中存储的交易记录可能被查询,随时间推移,各个区块中交易记录被查询的频次发生变化,以此来优化遗忘曲线;
(2)根据遗忘曲线求出各个区块的被查询概率,根据被查询概率对区块链进行分割,分为可遗忘部分和不可遗忘部分;
(3)可遗忘部分区块打包存储至云端,不可遗忘部分仍保存在区块链;
(4)随区块的增加和时间推移重复步骤(2)和步骤(3),使得一直有区块被打包存储至云端。
所述步骤(1)中,从上一区块创建结束到这一区块创建之间发生的交易记录,都被取得记账权的矿工打包存到区块中,并链接到区块链主链中。其中记录的所有交易记录都要经历验证过程,这就可能需要查询之前区块中存储的交易记录。但随着时间推移,各个区块可能被查询的频次发生变化。
采用牛顿冷却模型拟合遗忘曲线,函数表达式为其中t0指初始时刻,此模型中设为0;α为“遗忘系数”,此模型中设为0.1;T0为初始时刻时查询频次,此模型中设为100;遗忘曲线主要用来模拟各个区块被查询频次随着时间推移变化的过程,并以此来区分出“旧区块”和“新区块”,以便后续进行不同处理。
如图2所示,所述步骤(2)中,根据遗忘曲线对区块链进行分割,具体操作步骤为:
1)预先设置阈值门限D和M;
2)对于每一个区块,将区块产生的这一时刻记为t=0,此后每有一个新区块产生就将t增加一个时间单位;
3)每一时刻都对各个区块的遗忘曲线求0-t上的积分,积分的倒数定义为被查询概率;
4)当某个区块某时刻求得的被查询概率到达或小于门限D后,表示这一区块的查询频次已经降低到一定程度,体现在遗忘曲线就是这一区块已经开始趋向遗忘,定义为可遗忘区块;
5)当这种可遗忘区块数量达到阈值M时,就将M个可遗忘区块打包存储至云端。以此保证节点的物理存储能力足以保证存储当前区块链。
所述步骤(3)中,云端存储的具体操作步骤为:
数据存储到云端依然以链式结构的形式存储,可在多云环境中进行分布式存储,以保证一定的安全性。因为即使是查询频次已经降低至一定程度的区块,也并不排除会被查询的可能性。所以将数据存储至云端时,除了考虑区块上传成本,还需要同时考虑从云端查询数据并将信息返回本地的成本。
综上所述,本发明将云存储和遗忘曲线用于区块链存储容量优化当中。根据遗忘曲线对区块可能验证频次进行评估,由此对区块链进行分割。缓解了节点对区块链的存储压力,并提高了有效性。
以上所述仅表达了本发明的实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (2)
1.一种基于云存储的区块链存储容量优化方法,其特征在于,具体操作步骤如下:
(1)区块链中各个区块按时间顺序排列,在后面区块产生过程中,前面区块中存储的交易记录可能被查询,随时间推移,各个区块中交易记录被查询的频次发生变化,以此来优化遗忘曲线;
(2)根据遗忘曲线求出各个区块的被查询概率,根据被查询概率对区块链进行分割,分为可遗忘部分和不可遗忘部分;
(3)可遗忘部分区块打包存储至云端,不可遗忘部分仍保存在区块链;
(4)随区块的增加和时间推移重复步骤(2)和步骤(3),使得一直有区块被打包存储至云端;
在所述步骤(1)中,采用牛顿冷却模型拟合遗忘曲线,函数表达式为其中t0指初始时刻,此模型中设为0;α为“遗忘系数”,此模型中设为0.1;T0为初始时刻时查询频次,此模型中设为100;遗忘曲线主要用来模拟各个区块被查询频次随着时间推移变化的过程,并以此来区分出“旧区块”和“新区块”,以便后续进行不同处理;
在所述步骤(2)中,根据遗忘曲线对区块链进行分割,具体操作步骤为:
(2-1)预先设置阈值门限D和M;
(2-2)对于每一个区块,将区块产生的这一时刻记为t=0,此后每有一个新区块产生就将t增加一个时间单位;
(2-3)每一时刻都对各个区块的遗忘曲线求0-t上的积分,积分的倒数定义为被查询概率;
(2-4)当某个区块某时刻求得的被查询概率到达或小于门限D后,表示这一区块的查询频次已经降低到一定程度,定义为可遗忘区块;
(2-5)当这种可遗忘区块数量达到阈值M时,就将M个可遗忘区块打包存储至云端,以此保证节点的物理存储能力足以保证存储当前区块链。
2.根据权利要求1所述的基于云存储的区块链存储容量优化方法,其特征在于,所述步骤(3)中,数据存储到云端依然以链式结构的形式存储,在多云环境中进行分布式存储,以保证一定的安全性;因为即使是查询频次已经降低至一定程度的区块,也并不排除会被查询的可能性,所以将数据存储至云端时,除了考虑区块上传成本,还需要同时考虑从云端查询数据并将信息返回本地的成本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811507332.3A CN109819013B (zh) | 2018-12-11 | 2018-12-11 | 一种基于云存储的区块链存储容量优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811507332.3A CN109819013B (zh) | 2018-12-11 | 2018-12-11 | 一种基于云存储的区块链存储容量优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109819013A CN109819013A (zh) | 2019-05-28 |
CN109819013B true CN109819013B (zh) | 2021-10-12 |
Family
ID=66602205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811507332.3A Active CN109819013B (zh) | 2018-12-11 | 2018-12-11 | 一种基于云存储的区块链存储容量优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109819013B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765495A (zh) * | 2019-06-20 | 2020-02-07 | 中云智慧(北京)科技有限公司 | 一种区块链结构的生成及可遗忘安全存储方法 |
CN111784351B (zh) * | 2020-06-26 | 2021-01-22 | 江苏蜂云供应链管理有限公司 | 基于区块链网络和大数据分析的支付验证方法及智能设备 |
CN112069259B (zh) * | 2020-09-09 | 2023-08-18 | 天津大学 | 一种基于区块链的多云环境数据存储系统及方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10051444B2 (en) * | 2014-04-18 | 2018-08-14 | Gadget Software, Inc. | Application managing application |
US20170178072A1 (en) * | 2015-12-22 | 2017-06-22 | Intel Corporation | System, Apparatus And Method For Transferring Ownership Of A Smart Delivery Package |
CN105979589A (zh) * | 2016-04-06 | 2016-09-28 | 哈尔滨工业大学深圳研究生院 | 异构网络的能量有效资源分配方法及系统 |
CN107273916B (zh) * | 2017-05-22 | 2020-10-16 | 上海大学 | 隐写算法未知的信息隐藏检测方法 |
CN107995270A (zh) * | 2017-11-24 | 2018-05-04 | 成都赤乌软件技术有限公司 | 一种基于区块链实现分布式文件存储的方法 |
CN108519862B (zh) * | 2018-03-30 | 2020-03-17 | 百度在线网络技术(北京)有限公司 | 区块链系统的存储方法、装置、系统和存储介质 |
CN108491980A (zh) * | 2018-04-04 | 2018-09-04 | 湘潭大学 | 基于云区块链服务平台的微电网智能节点交易决策方法 |
-
2018
- 2018-12-11 CN CN201811507332.3A patent/CN109819013B/zh active Active
Non-Patent Citations (1)
Title |
---|
Power converters for particle accelerators;F. Bordry;《IEEE》;20060807;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109819013A (zh) | 2019-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109819013B (zh) | 一种基于云存储的区块链存储容量优化方法 | |
CN111125089B (zh) | 时序数据存储方法、装置、服务器及存储介质 | |
CN111177277B (zh) | 数据存储方法、交易存储方法及装置 | |
CN106201771B (zh) | 数据存储系统和数据读写方法 | |
CN105320775A (zh) | 数据的存取方法和装置 | |
CN106599292B (zh) | 针对实时视频数据和图像数据进行存储的方法及系统 | |
CN107707600B (zh) | 一种数据存储方法及装置 | |
CN103136243A (zh) | 基于云存储的文件系统去重方法及装置 | |
CN108021717B (zh) | 一种轻量级嵌入式文件系统的实现方法 | |
CN106874348A (zh) | 文件存储和索引方法、装置及读取文件的方法 | |
CN110879687B (zh) | 一种基于磁盘存储的数据读取方法、装置及设备 | |
CN107249135A (zh) | 视频数据存储系统及其操作方法、以及索引服务器 | |
CN106407224A (zh) | 一种键值存储系统中文件压实的方法和装置 | |
CN110888837A (zh) | 对象存储小文件归并方法及装置 | |
CN107180043B (zh) | 分页实现方法和分页系统 | |
CN107844436B (zh) | 一种缓存中脏数据的组织管理方法、系统及存储系统 | |
CN109407985A (zh) | 一种数据管理的方法以及相关装置 | |
CN113377292A (zh) | 一种单机存储引擎 | |
CN114510474B (zh) | 基于时间衰减的样本删除方法及其装置、存储介质 | |
CN103780263B (zh) | 数据压缩装置、数据压缩方法及记录介质 | |
CN111913913B (zh) | 访问请求的处理方法和装置 | |
TWI420333B (zh) | 分散式的重複數據刪除系統及其處理方法 | |
CN109669621A (zh) | 一种文件管理方法、文件管理系统、电子设备及存储介质 | |
CN106453663A (zh) | 改进的基于云服务的存储扩容方法及装置 | |
CN106599326B (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 |