当前位置: 首页 > 专利查询>东北大学专利>正文

一种基于多区块链环境下的连接查询优化方法技术

技术编号:29975457 阅读:19 留言:0更新日期:2021-09-08 09:59
本发明专利技术提供一种基于多区块链环境下的连接查询优化方法,涉及计算机区块链查询技术领域。本方法构建了基于SMM的多链连接索引SMMI,由三部分S

【技术实现步骤摘要】
一种基于多区块链环境下的连接查询优化方法


[0001]本专利技术涉及计算机区块链查询
,尤其涉及一种基于多区块链环境下的连接查询优化方法。

技术介绍

[0002]近年来,随着比特币和以太坊等区块链系统的成功,区块链技术受到各行业的关注。作为一种去中心化、不可篡改、可追溯、多方共同维护的分布式数据库,区块链可提供高度的安全性和可靠性以及数据透明性,并广泛应用于医疗数据维护、供应链,金融基础设施和数据共享等领域。
[0003]随着区块链技术的发展,越来越多的数据被分散存储在不同区块链上,形成复杂的多链场景。由于不同区块链间具有隔离性,导致数据无法互通,从而形成数据孤岛,使得多链间的连接查询操作变得复杂。现有区块链系统只支持基于单链的数据查询操作,没有考虑多链场景下的数据连接查询处理。考虑到区块链间跨地域部署,直接进行数据连接操作产生巨大的本地计算负载与网络传输开销,严重影响连接查询效率,影响用户体验。因此多链连接查询处理的优化显得更为重要。

技术实现思路

[0004]为解决上述技术问题,本专利技术提出一种多区块链环境下的连接查询优化方法。
[0005]一种基于多区块链的连接查询方法,包括以下步骤:
[0006]步骤1:采集医疗机构区块链数据作为输入,构建语义多链查询模型(Semantic Multi

Chains Model,SMM)。具体过程如下:
[0007]步骤1.1:构建语义多链查询模型SMM,其中包含若干条语义区块链S,每条语义区块链S由n个语义区块构成,S=S

Block1+S

Block2+S

Block3+
···
S

Block
n
,其中S

Block
i
为第i个语义区块,i∈1,2,

,n,每个语义区块提供事务数据,设计事务数据的存储结构为<Key,Columns>,对事务数据的属性都添加语义信息;
[0008]步骤1.2:定义T
x
为语义区块链上的语义事务,T
x
={T
id
=v1,T
s
=v2,SenID=v3,T
name
=v4,Attributes
x
},T
id
为该条事务的唯一标识,T
s
为该事务的时间戳,SenID为事务发起者,T
name
为事务类型,v
j
为事务属性值,j=1,2,3,4,Attributes
x
为用户自定义的应用级属性的集合Attributes
x
={attr1,attr2,
···
,attr
n
},attr
n
为事务属性,针对不同应用场合和事务类型,设定为不同的属性集合;
[0009]步骤2:构造基于语义区块链模型的多链连接索引(Semantic Multi

Chains Model Index,SMMI),由S

Inverted Index、S

Bitmap Index和S

B+

tree Index三部分组成,完成共有属性的链间连接。具体过程如下:
[0010]步骤2.1:分别遍历每条S链上所有事务,构建每条链attr的S

Inverted Index。S

Inverted Index的结构为<key,column>,索引名为attr_S

Inverted Index,key是原数据中的Columns属性值,column为原数据中的T
id
(事务唯一标识)、block

id(块号)、trans

id
(事务号);
[0011]步骤2.2:遍历所有链attr属性的S

Inverted Index索引,构建SMM整体的attr属性的S

Bitmap Index。S

Bitmap Index描述每个属性(attr)在所有链上的取值分布情况,每个attr对应一个S

Bitmap Index,第v

th bitmap表示每条语义区块链是否在存在attr为v

th值的事务,v

th bitmap中第i bit为
‘0’
表示第i条语义区块链不存在attr为v

th值的事务,为
‘1’
表示第i条语义区块链存在attr为v

th值的事务;
[0012]步骤2.3:在步骤2.2遍历所有链attr属性的S

Inverted Index同时,模仿B+树结构,根据attr的v

th大小,构建SMM的S

B+

tree Index,叶子节点为attr取v

th值的事务位置信息,包含:i(链号)、T
id
(事务唯一标识)、block

id(块号)、trans

id(事务号);
[0013]步骤2.4:SMMI构建完毕,共有属性连接完成;
[0014]步骤3:获取用户查询,应用SMMI中的S

Bitmap Index和S

B+

tree Index结构进行用户查询,输出查询结果。具体过程如下:
[0015]步骤3.1:定义多链连接查询Q由二元组构成,Q=[k1,k2,

,k
n
,Chains](i∈1,2,

,n)。其中,k
i
为(attr
i
=v

th),k
i
组合表达了用户的查询意图,Chains为S链的集合Chains=S1∪S2∪S3∪
·····
,S
i
各表示一条语义区块链;
[0016]步骤3.2:根据连接查询Q=[k1,k2,

,k
n
,Chains],获取k
i
对应属性attr
i
的S

Bitmap Index,查找v

th bitmap,当查询Q中Chains对应bit全为1时连接成立,否则不成立,返回查询结果为空;
[0017]步骤3.3:当连接成立时本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于多区块链环境下的连接查询优化方法,其特征在于,包括以下步骤:步骤1:采集医疗机构区块链数据作为输入,构建语义多链查询模型SMM;步骤2:构造基于语义区块链模型的多链连接索引SMMI,索引由S

Inverted Index、S

Bitmap Index和S

B+

tree Index组成,完成共有属性的链间连接;步骤3:获取用户查询信息,应用多链连接索引SMMI中的S

Bitmap Index和S

B+

tree Index进行用户查询,输出查询结果。2.根据权利要求1所述的一种基于多区块链环境下的连接查询优化方法,其特征在于,所述步骤1具体包括以下步骤:步骤1.1:构建语义多链查询模型SMM,其中包含若干条语义区块链S,每条语义区块链S由n个语义区块构成,S=S

Block1+S

Block2+S

Block3+
···
S

Block
n
,其中S

Block
i
为第i个语义区块,i∈1,2,

,n,每个语义区块提供事务数据,设计事务数据的存储结构为<Key,Columns>,对事务数据的属性都添加语义信息;步骤1.2:定义T
x
为语义区块链S上的事务数据,T
x
={T
id
=v1,T
s
=v2,SenID=v3,T
name
=v4,Attributes
x
},其中T
id
为该条事务的唯一标识,T
s
为该事务的时间戳,SenID为事务发起者,T
name
为事务类型,v
j
为事务属性值,j=1,2,3,4,Attributes
x
为用户自定义的应用级事务属性集合Attributes
x
={attr1,attr2,
···
,attr
n
},attr
n
为事务属性,针对不同应用场合和事务类型,设定为不同的属性集合。3.根据权利要求1所述的一种基于多区块链环境下的连接查询优化方法,其特征在于,所述步骤2具体包括以下步骤:步骤2.1:分别遍历每条语义区块链S上所有语义事务,构建每条语义区块链事务属性attr的S

Inverted Index;步骤2.2:遍历所有链应用级事务属性attr的S

Inverted Index,构建多链查询模型SMM整体的事务属性attr的S

Bitmap Index;步骤2.3:在步骤2.2遍历所有链应用级事务属性attr的S

Inverted Index同时,使用B+树结构,根据attr的v

th大小,构建SMM的S

B+

tree Index,叶子节点为attr取v

th值的事务位置信息,包含:语义区块链号i、事务唯一标识T
id
、语义块号block

id、语义事务号tra...

【专利技术属性】
技术研发人员:董思含信俊昌郝琨姚钟铭陈金义王之琼
申请(专利权)人:东北大学
类型:发明
国别省市:

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

1