当前位置: 首页 > 专利查询>肖玉连专利>正文

一种基于区块链的快速数据检索方法及系统技术方案

技术编号:27471366 阅读:19 留言:0更新日期:2021-03-02 17:36
本发明专利技术涉及一种区块链的技术领域,揭露了一种基于区块链的快速数据检索方法,包括:获取待存储数据,利用基于流水线的数据编码方案对待存储数据进行编码处理,得到编码数据;将编码数据存储到区块链中,并利用基于时间的副本存储方法将待存储数据的副本存储到区块链节点中;利用基于纠删码的数据切片方式对区块链中所存储的数据进行切片处理,得到基于纠删码的切片数据;利用基于时序的索引构建方法进行时序索引的构建;利用数据的时序索引进行数据的快速检索。本发明专利技术还提供了一种基于区块链的快速数据检索系统。本发明专利技术实现了数据的检索。索。索。

【技术实现步骤摘要】
一种基于区块链的快速数据检索方法及系统


[0001]本专利技术涉及区块链的
,尤其涉及一种基于区块链的快速数据检索方法及系统。

技术介绍

[0002]伴随社交网络、智能硬件、移动互联网和物联网的快速普及,使得大数据隐含的价值得以更大程度的展现,一个更加注重数据价值和数据开放的新时代正悄然来临。随之而来的是商业、科研、公共服务等领域都对大数据开放共享提出迫切需求,然而由于缺乏一个安全、可信的数据共享环境,大数据仍被各政府机构、商业企业、科研机构甚至个体存储和管控,形成“数据孤岛”,这严重影响大数据共享与开放。
[0003]区块链以其特有的去中心化信任、完全分布式等特点备受各行业瞩目,它的出现为破除大数据共享壁垒,实现数据可信互联成为可能。现有区块链作为去中心化的分布式共享数据库,要求各个节点存储完整的区块数据,随着系统内节点数量的增多和交易的复杂化,节点需要越来越多的本地存储空间来存储区块数据,这成为了区块链在实际应用中的瓶颈;同时目前的区块链方案并不支持时态数据处理,区块链中基于区块文件的顺序访问阻碍了高效的查询处理。
[0004]鉴于此,如何对区块链中数据的存储方式进行优化,实现更为高效的数据检索,成为本领域技术人员亟待解决的问题。

技术实现思路

[0005]本专利技术提出一种基于区块链的快速数据检索方法,通过采用基于流水线的数据编码方案将数据进行编码处理,以将编码数据存储到区块链中,并将本地存储的区块数据进行数据切片,从而进行区块数据的重构,实现区块链的存储优化;同时利用基于时间的索引构建算法建立区块数据的时态索引,减少对区块数据以及数据库的访问量,实现更为高效的数据检索。
[0006]为实现上述目的,本专利技术提供的一种基于区块链的快速数据检索方法,包括:
[0007]获取待存储数据,利用基于流水线的数据编码方案对待存储数据进行编码处理,得到编码数据;
[0008]将编码数据存储到区块链中,并利用基于时间的副本存储方法将待存储数据的副本存储到区块链节点中;
[0009]利用基于纠删码的数据切片方式对区块链中所存储的数据进行切片处理,得到基于纠删码的切片数据;
[0010]利用基于时序的索引构建方法进行时序索引的构建
[0011]利用数据的时序索引进行数据的快速检索。
[0012]可选地,所述利用基于流水线的数据编码方案对待存储数据进行编码处理,包括:
[0013]所述基于流水线的数据编码方案指将编码、解码计算过程以流水线方式运行在不
同的区块上,即对于待存储数据o1,o2,...,o
k
的对应存储区块h1,h2,...,h
n

[0014]在编码时,由对应存储区块h
i
分别对待存储数据o1,o2,...,o
k
进行编码,并得到各自的编码数据c1,c2,...,c
n
,其中n>k;
[0015]在解码时,先由编码数据c1的存储区块h1对c1进行解码运算,得到解码中间块i1,并将解码中间块i1发送给编码数据c2的存储区块h2;存储区块h2根据编码数据c2与i1的解码运算得到解码中间块i2,综上步骤,最终由解码区块h
n
得到最终的解码数据i
n

[0016]在本专利技术一个具体实施例中,本专利技术使用经典系统码(8,4)将数据O=(o1,o2,o3,o4)编码为8维编码数据C=(c1,...,c8),其中所述编码算法采用有限域算法在编码完成后,由存储区块h
i
存储编码数据c
i
;在数据解码过程中,存储区块h
i
分别将编码数据c
i
发送给解码节点n
i
,i=1,...,8,然后拥有第一个编码数据的解码节点n1对编码数据c1进行线性运算,将得到的结果发送给拥有第二个编码数据c2的解码节点n2,n2将从n1得到的结果与c2进行运算,并将结果发送给拥有第三个编码数据n3的解码节点n3,按此方法,解码过程以流水线形式进行下去,最后从解码节点节点n8得到原始数据。
[0017]可选地,所述利用基于时间的副本存储方法将待存储数据的副本存储到区块链节点中,包括:
[0018]详细地,当用户第一次上传或恢复数据时,本专利技术会将数据的副本存储在参与编解码过程的最后一个区块链节点中,同时将该数据作为热数据,用户可能在短时间内再次读取它;
[0019]1)当副本被存储时,会同时设置删除时钟t和阈值T,并将其与副本一起存储在区块链节点中,时钟的参数值t在开始时为零,并随时间增加;该过程中计算开销减少到零,存储开销增加了四个块,通过这种方式,可以以存储开销为代价减少计算开销;
[0020]2)若用户在时间t<T时再次读取该数据,则可以直接从最后一个区块链节点获取该数据的副本,并同时将时钟参数值重置为零;
[0021]3)若t≥T,将删除节点中存储的副本,释放存储空间;即若用户未读对象的时间长于阈值,将该数据视为冷数据,用户很长时间不会读取它,对于冷数据,本专利技术删除其副本以释放存储空间。
[0022]所述阈值T的大小决定因素包括用户两次访问该数据的时间间隔t和现有可用网络资源。对此,本专利技术设定网络可用计算资源值为C,设定网络可用存储空间资源值为S,当用户每次访问数据时进行阈值的更新:
[0023][0024]其中:
[0025]t为用户两次访问同一数据的时间间隔;
[0026]C
old
,C
new
分别为用户第一次访问数据和第二次访问数据的网络可用计算资源值;
[0027]S
old
,S
new
分别为用户第一次访问数据和第二次访问数据的网络可用存储空间资源值;
[0028]α,β∈[0,1],α+β=1,其中α,β分别表示区块链中计算资源、存储资源对区块链网络的重要性,在本专利技术一个具体实施例中,本专利技术设置α=0.4,β=0.6。
[0029]可选地,所述利用基于纠删码的数据切片方式对区块链中所存储的数据进行切片处理,包括:
[0030]1)将区块链中的第i个区块B
i
均分为共k个数据切片;
[0031]2)将数据切片与预设的基于纠删码的切分矩阵做矩阵乘法运算,得到基于纠删码的切片数据:
[0032][0033]其中:
[0034]为编码矩阵中的矩阵值;在本专利技术一个具体实施例中,所采用的编码矩阵为基于柯西矩阵的编码矩阵,所述基于柯西矩阵的编码矩阵为:
[0035][0036]x
i
,y
i
为伽罗华域中的元素,其中m>n;
[0037]为区块链第i个区块的第k个数据切片;
[0038]为区块链第i个区块的第r个基于纠删码的切片数据,其中r&a本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于区块链的快速数据检索方法,其特征在于,所述方法包括:获取待存储数据,利用基于流水线的数据编码方案对待存储数据进行编码处理,得到编码数据;将编码数据存储到区块链中,并利用基于时间的副本存储方法将待存储数据的副本存储到区块链节点中;利用基于纠删码的数据切片方式对区块链中所存储的数据进行切片处理,得到基于纠删码的切片数据;利用基于时序的索引构建方法进行时序索引的构建;利用数据的时序索引进行数据的快速检索。2.如权利要求1所述的一种基于区块链的快速数据检索方法,其特征在于,所述利用基于流水线的数据编码方案对待存储数据进行编码处理,包括:所述基于流水线的数据编码方案指将编码、解码计算过程以流水线方式运行在不同的区块上,即对于待存储数据o1,o2,...,o
k
的对应存储区块h1,h2,...,h
n
:在编码时,由对应存储区块h
i
分别对待存储数据o1,o2,...,o
k
进行编码,并得到各自的编码数据c1,c2,...,c
n
,其中n>k;在解码时,先由编码数据c1的存储区块h1对c1进行解码运算,得到解码中间块i1,并将解码中间块i1发送给编码数据c2的存储区块h2;存储区块h2根据编码数据c2与i1的解码运算得到解码中间块i2,综上步骤,最终由解码区块h
n
得到最终的解码数据i
n
。3.如权利要求2所述的一种基于区块链的快速数据检索方法,其特征在于,所述利用基于时间的副本存储方法将待存储数据的副本存储到区块链节点中,包括:1)当副本被存储时,会同时设置删除时钟t和阈值T,并将其与副本一起存储在区块链节点中,时钟的参数值t在开始时为零,并随时间增加;2)若用户在时间t<T时再次读取该数据,则可以直接从最后一个区块链节点获取该数据的副本,并同时将时钟参数值重置为零;3)若t≥T,将删除节点中存储的副本,释放存储空间;即若用户未读对象的时间长于阈值,将该数据视为冷数据,用户很长时间不会读取它,对于冷数据,本发明删除其副本以释放存储空间。所述阈值T的大小决定因素包括用户两次访问该数据的时间间隔t和现有可用网络资源;通过设定网络可用计算资源值为C以及网络可用存储空间资源值为S,当用户每次访问数据时进行阈值的更新:其中:T表示更新前的阈值;T

表示更新后的阈值;t为用户两次访问同一数据的时间间隔;C
old
,C
new
分别为用户第一次访问数据和第二次访问数据的网络可用计算资源值;S
old
,S
new
分别为用户第一次访问数据和第二次访问数据的网络可用存储空间资源值;
α,β∈[0,1],α+β=1,设置α=0.4,β=0.6。4.如权利要求3所述的一种基于区块链的快速数据检索方法,其特征在于,所述利用基于纠删码的数据切片方式对区块链中所存储的数据进行切片处理,包括:1)将区块链中的第i个区块B
i
均分为共k个数据切片;2)将数据切片与预设的基于纠删码的切分矩阵做矩阵乘法运算,得到基于纠删码的切片数据:其中:为编码矩阵中的矩阵值;为区块链第i个区块的第k个数据切片;为区块链第i个区块的第r个基于纠删码的切片数据,其中r>k;3)根据节点本地存储能力不同,节点随机删除编码切片,其中本地存储能力越...

【专利技术属性】
技术研发人员:肖玉连
申请(专利权)人:肖玉连
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1