一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于索引的链上数据查询方法及装置与流程

2022-02-20 03:17:48 来源:中国专利 TAG:

技术特征:
1.一种基于索引的链上数据查询方法,其特征在于,该方法包括以下步骤:原始数据上链步骤,用于为每个待上链原始数据提取数据摘要,为提取的数据摘要构建或更新摘要字典树索引,将待上链数据摘要及构建的摘要字典树索引打包成区块结构并进行上链处理,其中,所述摘要字典树是以分布在不同区块中的上链数据摘要的哈希值作为键值来构建的;数据操作记录产生及上链步骤,用于为原始数据操作构造数据操作记录,为构造的数据操作记录构建或更新数据操作记录链索引,将数据操作记录及数据操作记录链索引打包成区块结构并进行上链处理,其中,所述数据操作记录链被设计为将同一数据的所有操作记录以链式结构进行链接,并且所述数据操作记录链的首节点地址被存储在所述摘要字典树中的对应节点中;原始数据查询步骤,用于在接收到用户的原始数据查询请求后从中提取待查数据摘要的哈希值,从区块链网络最新区块中获取最新的摘要字典树根结点,通过执行摘要字典树检索获取摘要存储地址,依据获取的存储地址获取数据摘要并通过解析并访问该数据摘要中原始数据的访问地址获取原始数据;以及数据操作记录查询步骤,用于在接收到用户的数据操作记录查询请求后从中提取关联的数据摘要哈希值,从区块链网络最新区块中获取最新的摘要字典树根结点,基于提取的数据摘要哈希值通过执行摘要字典树检索获取操作记录链首节点地址,基于获取的获取操作记录链首节点地址执行操作记录链检索获取所述数据摘要的所有操作记录的存储地址,并依据获取的存储地址从区块链网络中获取所述数据摘要的历史操作记录。2.根据权利要求1所述的方法,其特征在于,所述摘要字典树的节点包括索引节点和数据节点;所述索引节点中存储有索引键和指针数组,所述指针数组中的每一个指针指向不同路径的下一个节点;所述数据节点中存储有索引键、指向当前数据摘要上一版本在摘要字典树中所对应数据节点的地址的指针、当前节点的索引键所对应的数据摘要的存储地址以及当前节点的索引键所对应的数据摘要操作记录链的首节点地址;所述数据操作记录链为单链表结构,其元素为操作记录数组,所述数据操作记录链包括索引节点和数据节点,所述数据操作记录链的索引节点中存储有索引指针和数据指针数组;所述数据操作记录链数据节点包括以下字段信息中的至少部分信息:数据摘要哈希值、数据操作者、时间戳和操作类型。3.根据权利要求2所述的方法,其特征在于,所述索引节点中的索引键的值为数据摘要哈希值的公共前缀,所述数据节点中索引键的值为数据摘要的完整哈希值。4.根据权利要求2或3所述的方法,其特征在于,所述原始数据上链步骤包括:收集待上链的原始数据,为每个原始数据构造数据摘要;通过构建或更新摘要字典树,为每个待上链数据摘要构建摘要字典树索引;将待上链数据摘要和摘要字典树索引数据打包成区块结构,将区块结构序列化到新建的区块文件中;以及将新建的区块文件分发存储到网络中各节点。5.根据权利要求4所述的方法,其特征在于,所述通过构建或更新摘要字典树,为每个待上链数据摘要构建摘要字典树索引,包括:
计算每一个数据摘要的哈希值,并为其新建一个数据节点,该数据节点的索引键的值为当前数据摘要的哈希值;获取当前摘要字典树,在当前摘要字典树不存在的情况下构建摘要字典树;确定每个数据摘要是否为新增摘要,若不是新增摘要则获取该数据摘要上一版本的哈希值,检索当前摘要字典树获取历史版本数据摘要对应的数据节点,并将该数据节点地址赋值给当前数据节点的所述指针;若为新增摘要,则将当前数据节点所述指针置空,并将新建的每个数据节点插入当前摘要字典树。6.根据权利要求1所述的方法,其特征在于,所述数据操作记录产生及上链步骤包括:监听链上原始数据操作行为,并为原始数据操作构造数据操作记录;通过构建或更新操作记录链,为每个待上链的数据操作记录构建数据操作记录链索引;将待上链操作记录和索引数据打包成区块结构,然后将区块结构序列化到新建的区块文件中;以及将新建的区块文件分发存储到网络中各节点。7.根据权利要求2所述的方法,其特征在于,所述原始数据查询步骤包括:在接收到用户的原始数据查询请求后,提取其中的待查数据摘要的哈希值;获取当前网络中的最新区块文件并从中提取摘要字典树根节点;基于提取的待查数据摘要的哈希值检索摘要字典树获取待查数据摘要存储地址;依据数据摘要存储地址从区块中获取待查数据摘要;以及提取数据摘要中原始数据访问地址,通过访问该地址获取原始数据;所述数据操作记录查询步骤包括:基于数据操作记录查询请求提取其中的待查数据摘要的哈希值;获取当前网络中的最新区块文件并从中提取摘要字典树根节点;基于提取的数据摘要哈希值检索摘要字典树获取待查数据操作记录链首地址;通过检索操作记录链获取待查数据摘要的所有操作记录存储地址;依据存储地址从区块中获取操作记录。8.根据权利要求7所述的方法,其特征在于,所述通过构建或更新操作记录链,为每个待上链的数据操作记录构建数据操作记录链索引,包括:将构造的数据操作记录按被操作的原始数据进行分类,使得同一原始数据的操作记录被划为一类;为每个原始数据操作类新建一个索引节点,将该操作类中所有操作记录地址赋值给该索引节点的数据指针数组字段;计算当前数据操作类对应的数据摘要哈希值,通过检索摘要字典树获取该数据摘要的操作记录链首地址,并将其赋值给当前索引节点的索引指针字段;将新建的索引节点地址作为该数据操作记录链的新首节点更新到摘要字典树相应数据节点中,从而实现新增数据操作记录链索引的构建。9.一种基于索引的链上数据查询装置,包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算
机指令被处理器执行时该装置实现如权利要求1至8中任意一项所述方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至8中任意一项所述方法的步骤。

技术总结
本发明提供一种基于索引的链上数据查询方法及装置,该方法包括:为提取的数据摘要构建摘要字典树索引,将待上链数据摘要及构建的摘要字典树索引打包成区块结构并上链;为原始数据操作构造数据操作记录,为构造的数据操作记录构建或更新数据操作记录链索引,将数据操作记录及数据操作记录链索引打包成区块结构并进行上链,该数据操作记录链被设计为将同一数据的所有操作记录以链式结构进行链接,且数据操作记录链的首节点地址被存储在所述摘要字典树中的对应节点中;基于原始数据查询请求通过执行摘要字典树检索获取原始数据;基于数据操作记录查询请求通过行摘要字典树检索和操作记录链检索获取数据摘要的历史操作记录。操作记录链检索获取数据摘要的历史操作记录。操作记录链检索获取数据摘要的历史操作记录。


技术研发人员:王红熳 刘明民 杨放春
受保护的技术使用者:北京邮电大学
技术研发日:2021.09.02
技术公布日:2022/1/7
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献