一种区块链时空数据查询系统及电子设备技术方案

技术编号:20955268 阅读:29 留言:0更新日期:2019-04-24 08:43
本申请涉及一种区块链时空数据查询系统及电子设备。包括:用于存储区块数据的区块链模块、与所述区块链模块电性连接的数据插入模块;与所述区块链模块电性连接的时间范围搜索模块;通过所述时间范围搜索模块与所述区块链模块电性连接的空间范围搜索模块;其中,所述区块链模块中有向无环图的拓扑结构G设置为节点集V和边集E两个部分。本申请的查询系统结构能够做到“在线式”的迅速返回区块链中符合给定要求的结果。

A Block Chain Spatio-temporal Data Query System and Electronic Equipment

This application relates to a block chain spatiotemporal data query system and an electronic device. It includes: a block chain module for storing block data, a data insertion module for electrically connecting with the block chain module, a time range search module for electrically connecting with the block chain module, a space range search module for electrically connecting with the block chain module through the time range search module, and a topological structure G for directed acyclic graph in the block chain module. Set it as node set V and edge set E. The structure of the query system in this application can quickly return the results that meet the given requirements in the block chain \online\.

【技术实现步骤摘要】
一种区块链时空数据查询系统及电子设备
本申请属于互联网数据库
,特别涉及一种区块链时空数据查询系统及电子设备。
技术介绍
区块链技术,也被称作分布式账本技术,是一种互联网数据库技术,是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链是随着比特币等数字加密货币的日益普及而逐渐兴起的一种全新的去中心化基础架构与分布式计算范式。由于区块链具有去中心化、时序数据、集体维护、安全可信等优点,近年,它已经被广泛地应用在金融、医疗、教育等行业中,工业界与学术界也在探索区块链更多的应用场景。随着区块链技术的兴起激发了包括时空数据管理在内的各种领域的大量新应用的产生,例如,考虑在运输过程中跟踪物品的供应链场景。运输过程中要求不仅需要不断更新时空信息,还应支持时空数据的快速查询,如列出在t时间位于l处的所有数据,或者从t1到t2时间段内位于l处的所有数据。但是,当前的区块链技术并不能高效响应时空数据的查询,而针对时空数据的高效查询研究在数据库中一直备受瞩目,若能在区块链上进行高效时空数据查询,将具有广泛的应用前景。区块链利用Merkle树对区块中的事务数据进行哈希,其中每个区块包含块头和块身,块头的作用是链接到前面的块为区块链提供完整性,块身则包含验证过的块创建过程中的数据记录。当需要查询区块链中的数据时,通过块身可以查询到当前区块的事务数据,通过块头可以找到区块链中当前区块的前一个区块。目前,对区块链中某种数据模式下数据的查询,需要从区块链上最新加入的区块开始,先查询该块块身中的事务数据,再通过块头回溯到前一个区块中查询,以此类推,遍历整条区块链的事务数据。综上所述,现有区块链技术存在的缺点在于:1)、不支持对时空数据进行高效的管理,包括对时空数据有效的存储和对时空数据的高效查询;2)、当前区块链对数据的查询,需要从区块链上最新加入的区块开始,通过其块头追溯到前一个区块这样一个区块一个区块的进行查询,最坏情况下,查询完需要便利整条区块链的数据,显然,这样的查询十分低效与耗时,并不适合快速查询;3)、当前区块链数据查询响应方法并不适合频繁变动的时空数据的查询;4)、对于空间坐标数据也没有一些索引以加速整个过程;5)、在区块链系统中针对时空数据这些多维数据建立索引往往需要超过一个复杂索引,这样不仅十分繁琐而且开销会较大。
技术实现思路
本申请提供了一种区块链时空数据查询系统及电子设备,旨在至少在一定程度上解决现有技术中的上述技术问题之一。为了解决上述问题,本申请提供了如下技术方案:一种区块链时空数据查询系统,包括:区块链模块:用于存储区块数据;数据插入模块:与所述区块链模块电性连接;时间范围搜索模块:与所述区块链模块电性连接;空间范围搜索模块:通过所述时间范围搜索模块与所述区块链模块电性连接;其中,所述区块链模块中有向无环图的拓扑结构G设置为节点集V和边集E两个部分。优选的,所述区块链模块中每个区块块头中设置时间元信息;所述拓扑结构G对于每个v∈V具有多个源节点s。优选的,所述区块块头中的根节点信息基于Merkle树与kd树相结合的树型索引结构;所述根节点分别与右子树的根节点、左子树的根节点连接。为了解决上述技术问题,本申请实施例还提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储中设置有如上所述的区块链模块,所述处理器设置有如上所述的数据插入模块、时间范围搜索模块以及空间范围搜索模块。相对于现有技术,本申请实施例产生的有益效果在于:本申请实施例的区块链时空数据查询系统及电子设备通过将Merkle树与kd树相结合形成新树形索引以在有向无环图结构上存储区块链系统中的时空数据,基于此,在有向无环图中筛选符合时间范围的区块,并在筛选后的区块中查询符合空间范围的数据。相对于现有技术,本申请实施例的优势在于:1、本申请从区块链的存储结构的调整到对区块链模块进行查询的相应模块都是针对时空数据设计的,能够符合区块链在时空数据管理上的应用场景;2、本申请通过在每个区块头中加入特定时间元信息,用于记录该区块中时空数据的时间区间,当查询时可以通过给定的时间限制快速找到符合该限制的区块,根据Merkle树与kd树相结合的索引,可以定位到区块中相应的数据,改进现有技术中每次查询响应都需要遍历各区块,并读取每个区块中的数据十分低效的不足;3、改进在区块链系统对多维数据难以建立非复杂索引结构的不足,针对空间数据建立Merkle树与kd树相结合的树型索引结构,并通过该树型索引得到的键值可以迅速定位到原始数据;4、针对时空数据多应用于频繁更新的场景,本申请区块链模块中的数据结构采用验证时间更快的有向无环图结构(DAG),该结构的验证时间优于链式结构。附图说明图1是本申请实施例的区块链时空数据查询系统的结构示意图;图2为本申请实施例的区块链时空数据查询系统的硬件设备结构示意图;图3是本申请实施例的有向无环图;图4是本申请实施例的为在有向无环图上进行时空范围查询的响应示例图;图5本申请实施例的区块链时空数据查询系统的流程图;图6是本申请实施例的时间范围搜索的流程图;图7是本申请实施例提供的空间范围搜索的流程图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。请参阅图1,是本申请实施例的区块链时空数据查询系统的框架示意图。本申请的区块链时空数据查询系统,包括:用于存储区块数据的区块链模块、与区块链模块电性连接的数据插入模块;与区块链模块电性连接的时间范围搜索模块;通过时间范围搜索模块与区块链模块电性连接的空间范围搜索模块;其中,区块链模块中有向无环图的拓扑结构G设置为节点集V和边集E两个部分。优选的,区块链模块中每个区块块头中设置时间元信息以便于时间范围搜索模块检索;如附图3所示,拓扑结构G对于每个v∈V(属于节点集V的节点v)具有多个源节点s。源节点s是在有向无环图中入度为0的节点。对于在拓扑结构G中的每个节点v,它们均被后续的节点验证,而后续的节点又被更后续的节点进行验证。以此类推,可知最新加入拓扑结构G的区块节点是没有后续节点对它们进行验证的,所以它们是待验证的源节点s。利用源节点s,能够追溯其前面已验证过的节点,能够方便对整个有向无环图的拓扑结构G进行遍历。优选的,区块块头中的根节点信息基于Merkle树与kd树相结合的树型索引结构;根节点分别与右子树的根节点、左子树的根节点连接。具体的,数据插入模块:还用于在区块链区块更新过程中,将区块链系统中的时空数据插入基于Merkle树与kd树相结合的树形索引结构中,并存储在区块链模块中;同时,对于区块链模块中的每个区块,在块头中引入时间元信息;本申请实施例中,时空数据在区块链中的结构上采用了基于Merkle树与kd树相结合的树型索引结构。其中,Merkle树是用于存储哈希值的树结构,其叶子是数据的哈希值,而非叶子节点是其对应子节点串联字符串的哈希值。而kd树是一种对于多维欧式空间分割构造的二叉树,其也代表了对k维数据集合构成的k维空间的一个划分,即树中每个节点对应一个k维的超矩形。本文档来自技高网
...

【技术保护点】
1.一种区块链时空数据查询系统,其特征在于,包括:区块链模块:用于存储区块数据;数据插入模块:与所述区块链模块电性连接;时间范围搜索模块:与所述区块链模块电性连接;空间范围搜索模块:通过所述时间范围搜索模块与所述区块链模块电性连接;其中,所述区块链模块中有向无环图的拓扑结构G设置为节点集V和边集E两个部分。

【技术特征摘要】
1.一种区块链时空数据查询系统,其特征在于,包括:区块链模块:用于存储区块数据;数据插入模块:与所述区块链模块电性连接;时间范围搜索模块:与所述区块链模块电性连接;空间范围搜索模块:通过所述时间范围搜索模块与所述区块链模块电性连接;其中,所述区块链模块中有向无环图的拓扑结构G设置为节点集V和边集E两个部分。2.根据权利要求1所述的区块链时空数据查询系统,其特征在于,所述区块链模块中每个区块块头中设置时间元信息;所述拓扑结构G对于每个v∈V具有多...

【专利技术属性】
技术研发人员:曲强
申请(专利权)人:中国科学院深圳先进技术研究院
类型:新型
国别省市:广东,44

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

1