[发明专利]一种块链式账本中的查询方法、装置及设备有效
申请号: | 201910912929.4 | 申请日: | 2019-09-25 |
公开(公告)号: | CN110716965B | 公开(公告)日: | 2022-02-25 |
发明(设计)人: | 杨新颖 | 申请(专利权)人: | 蚂蚁区块链科技(上海)有限公司 |
主分类号: | G06F16/2458 | 分类号: | G06F16/2458;G06F16/22 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 200025 上海市黄浦区黄陂南路8*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 链式 账本 中的 查询 方法 装置 设备 | ||
1.一种块链式账本中的查询方法,应用于通过块链式账本存储数据的中心化的数据库服务提供端中,包括:
接收客户端所发送的包含待查询字段的查询指令;
获取预先建立的索引表;所述索引表包含:至少一组业务属性与包含该业务属性的数据记录的位置信息之间的对应关系,或者,至少一组业务属性与包含该业务属性的数据记录的哈希值之间的对应关系;所述索引表中每个业务属性包含由至少两个子字符串拼接成的字符串,不同子字符串用于表征不同粒度特征;
针对所述索引表中每个业务属性,从该业务属性的头部开始确定出与所述待查询字段的长度相同的字符;若确定出的长度相同的字符与所述待查询字段相同或者相似,则将该业务属性确定为与所述待查询字段相匹配的业务属性;
从所述索引表中,获取每个相匹配的业务属性所对应的位置信息或者哈希值;
根据获取的位置信息或者哈希值,从所述块链式账本中查询相应的数据记录。
2.如权利要求1所述的方法,所述索引表通过如下方式预先建立:
获取账本中的每个数据记录中的业务属性;
确定每个数据记录在账本中的位置信息,或者,确定每个数据记录的哈希值;
建立每个业务属性和包含该业务属性的数据记录的位置信息之间的对应关系;或者,建立每个业务属性和包含该业务属性的数据记录的哈希值之间的对应关系;
将建立的对应关系写入以业务属性为主键的索引。
3.如权利要求2所述的方法,所述账本中的数据块通过如下方式生成:
接收待存储的数据记录,确定各数据记录的哈希值,其中,数据记录中包含业务属性;
当达到预设的成块条件时,确定待写入数据块中的各数据记录,生成包含数据块的哈希值和数据记录的第N个数据块,具体包括:
当N=1时,初始数据块的哈希值和块高基于预设方式给定;
当N1时,根据待写入数据块中的各数据记录和第N-1个数据块的哈希值确定第N个数据块的哈希值,生成包含第N个数据块的哈希值和各数据记录的第N个数据块,其中,数据块的块高基于成块时间的先后顺序单调递增。
4.如权利要求3所述的方法,所述预设的成块条件包括:
待存储的数据记录数量达到数量阈值;或者,
距离上一次成块时刻的时间间隔达到时间阈值。
5.如权利要求2所述的方法,将建立的对应关系写入以业务属性为主键的索引,包括:
根据每个业务属性中所包含的字符的顺序,对索引中的主键依序排列;
将每个业务属性对应的对应关系写入主键依序排列后的以业务属性为主键的索引。
6.一种块链式账本中的查询装置,应用于通过块链式账本存储数据的中心化的数据库服务提供端中,包括:
接收模块,接收客户端所发送的包含待查询字段的查询指令;
确定模块,获取预先建立的索引表;所述索引表包含:至少一组业务属性与包含该业务属性的数据记录的位置信息之间的对应关系,或者,至少一组业务属性与包含该业务属性的数据记录的哈希值之间的对应关系;所述索引表中每个业务属性包含由至少两个子字符串拼接成的字符串,不同子字符串用于表征不同粒度特征;
针对所述索引表中每个业务属性,从该业务属性的头部开始确定出与所述待查询字段的长度相同的字符;若确定出的长度相同的字符与所述待查询字段相同或者相似,则将该业务属性确定为与所述待查询字段相匹配的业务属性;
获取模块,从所述索引表中,获取每个相匹配的业务属性所对应的位置信息或者哈希值;
查询模块,根据获取的位置信息或者哈希值,从所述块链式账本中查询相应的数据记录。
7.如权利要求6所述的装置,还包括索引创建模块,用于预先建立索引;
所述索引创建模块,获取账本中的每个数据记录中的业务属性;确定每个数据记录在账本中的位置信息,或者,确定每个数据记录的哈希值;建立每个业务属性和包含该业务属性的数据记录的位置信息之间的对应关系;或者,建立每个业务属性和包含该业务属性的数据记录的哈希值之间的对应关系;将建立的对应关系写入以业务属性为主键的索引。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于蚂蚁区块链科技(上海)有限公司,未经蚂蚁区块链科技(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910912929.4/1.html,转载请声明来源钻瓜专利网。