System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据检索领域,具体涉及一种多维自适应增量r树索引构建方法。
技术介绍
1、在针对多维数据查询的解决方案,现有技术主要着手于空间索引、自适应索引。
2、空间索引方面,常常使用的是kd树和r树。kd树作为一种二叉搜索树,将点组织在空间分区中。每个内部节点沿着一个维度平分空间,并且每个级别以循环方式对应于一个维度。同理的还有,其他空间分割方法,四叉树,八叉树和发散八叉树,使用预定义的边界创建象限或八分区,但并不将数据的分布特点进行分析,造成对多维数据的处理往往随维度的增加计算消耗也线性增长。
3、现有的自适应索引方法围绕单个维度或属性组织每个索引,或者以其他方式将多层索引的每个级别专用于单个维度;因此,自适应索引只在外部通过查询转换和后处理来容纳具有空间范围的非点多维对象。kd树的自适应索引变体在响应查询的同时构建索引,但查询对过程没有影响。每个查询都让数据集的一部分被索引,其大小取决于参数;在足够数量的查询之后,索引的计算成本将收敛。但是,对部分的查询响应时间变化较大;为了确保一致的性能,kd树变体往往建立成本模型进行调整,因此比的kd树更具有健壮性,但是在总体查询响应时间上仍然难以避免,其特征体现在kd所有变体都是针对点而不是具有空间范围的对象而设计的。
4、kd树、四叉树、八叉树和发散八叉树等自适应索引通过响应查询而递增地构建索引来响应这种需要;在其默认形式中,为单个维度属性进行索引,应对多个维度的情况下,需要为每个索引级别编制一个属性。这种方法在对索引空间数据对象进行构建时,遇
5、因此,亟需一种多维自适应增量r树索引构建方法,用于提供一种多维数据查询的解决方案。
技术实现思路
1、本专利技术提出了一种多维自适应增量r树索引构建方法,自适应增量r树响应于传入的查询,使用一套用于创建和分裂节点的策略法,在静态数组上递增地和渐进地构造存储器内空间索引。自适应增量r树在多维自适应索引的预查询和对工作负载的累积响应时间优于现有技术一个数量级。具体技术方案如下:
2、第一方面,一种多维自适应增量r树索引构建方法,所述方法包括:
3、基于查询语句遍历多维自适应增量r树的各个叶节点,确定与所述查询语句的查询范围所匹配的叶节点,所述多维自适应增量r树内设置有多个叶节点,叶节点根据所保存的数据对象的量分为规则叶节点和不规则叶节点;
4、若所述叶节点完全被所述查询范围包含,则将所述叶节点对应的内容加入查询结果中;
5、若所述叶节点部分与所述查询范围相交,则对所述叶节点进行规则判断和分裂处理,并将处理结果中完全被所述查询范围包含的叶节点或与查询范围部分重叠的规则叶节点对应的内容加入查询结果中。
6、进一步的,在所述基于查询语句遍历多维自适应增量r树的各个叶节点,确定与所述查询语句的查询范围所匹配的叶节点,之前还包括:
7、基于上限确定所述多维自适应增量r树的规则叶节点和不规则叶节点;
8、创建所述多维自适应增量r树的一个初始节点,所述初始节点为包含所有数据对象的不规则叶节点。
9、进一步的,所述对所述叶节点进行规则判断和分裂处理,包括:
10、若部分与所述查询范围相交的叶节点是规则叶节点,则将所述规则叶节点内相交部分内容加入查询结果中;
11、若部分与所述查询范围相交的叶节点是不规则叶节点,则将所述不规则叶节点进行分裂处理。
12、进一步的,所述将所述不规则叶节点进行分裂处理,包括:
13、基于查询数据的维度确定轴,所述查询数据为每个叶节点包含的全部数据,所述轴代表所述查询数据在不同维度上的映射;
14、基于所述查询范围和叶节点中的所述查询数据的轴,确定所述查询数据的每个轴的重叠部分和所述查询数据中的非查询范围空间;
15、对于所述查询数据中的所有轴,确定所述查询数据与所述查询范围不重叠的部分中体积最大的空间区域;
16、将所述空间区域作为分裂边,在所述查询数据对应的高维空间中分裂出一个体积最大且形成最接近多维超正方体的子空间。
17、进一步的,在所述将所述空间区域作为分裂边,在所述查询数据对应的高维空间中分裂出一个体积最大且形式最接近多维超正方体的子空间,之后还包括:
18、在每个分裂的树节点内额外随机选择一个轴进行分裂。
19、进一步的,所述基于查询语句遍历多维自适应增量r树的各个叶节点时,还包括:
20、将所述多维自适应增量r树包含的数据存储在静态数组中,每个叶节点都指向所述静态数组中的一个范围,在进行数据查询时,基于所述静态数组进行数据排列。
21、第二方面,本专利技术还提供一种多维自适应增量r树索引构建系统,所述系统包括:查询单元、输出单元、分裂单元;
22、所述查询单元用于,基于查询语句遍历多维自适应增量r树的各个叶节点,确定与所述查询语句的查询范围所匹配的叶节点,所述多维自适应增量r树内设置有多个叶节点,叶节点根据所保存的数据对象的量分为规则叶节点和不规则叶节点;
23、所述输出单元用于,若所述叶节点完全被所述查询范围包含,则将所述叶节点对应的内容加入查询结果中;
24、所述分裂单元用于,若所述叶节点部分与所述查询范围相交,则对所述叶节点进行规则判断和分裂处理,并将处理结果中完全被所述查询范围包含的叶节点或与查询范围部分重叠的规则叶节点对应的内容加入查询结果中。
25、本专利技术的另一种实施例中,所述系统还包括:初始单元;所述初始单元用于,
26、基于上限确定所述多维自适应增量r树的规则叶节点和不规则叶节点;
27、创建所述多维自适应增量r树的一个初始节点,所述初始节点为包含所有数据对象的不规则叶节点。
28、本专利技术的另一种实施例中,所述分裂单元还用于:
29、若部分与所述查询范围相交的叶节点是规则叶节点,则将所述规则叶节点内相交部分内容加入查询结果中;
30、若部分与所述查询范围相交的叶节点是不规则叶节点,则将所述不规则叶节点进行分裂处理。
31、本专利技术的另一种实施例中,所述分裂单元还用于:
32、基于查询数据的维度确定轴,所述查询数据为每个叶节点包含的全部数据,所述轴代表所述查询数据在不同维度上的映射;
33、基于所述查询范围和叶节点中的所述查询数据的轴,确定所述查询数据的每个轴的重叠部分和所述查询数据中的非查询范围空间;
34、对于所述查询数据中的所有轴,确定所述查询数据与所述查询范围不重叠的部分中体积最大的空间区域;
35、将所述空间区域作为分裂边,在所述查询数据对应的高维空间中分裂出一个体积最大且形成最接近多维超正方体的子空间。
36、本专利技术的有益效果如下:
37、本专利技术一种多维自本文档来自技高网...
【技术保护点】
1.一种多维自适应增量R树索引构建方法,其特征在于,所述方法包括:
2.如权利要求1所述的一种多维自适应增量R树索引构建方法,其特征在于,在所述基于查询语句遍历多维自适应增量R树的各个叶节点,确定与所述查询语句的查询范围所匹配的叶节点,之前还包括:
3.如权利要求1所述的一种多维自适应增量R树索引构建方法,其特征在于,所述对所述叶节点进行规则判断和分裂处理,包括:
4.如权利要求3所述的一种多维自适应增量R树索引构建方法,其特征在于,所述将所述不规则叶节点进行分裂处理,包括:
5.如权利要求4所述的一种多维自适应增量R树索引构建方法,其特征在于,在所述将所述空间区域作为分裂边,在所述查询数据对应的高维空间中分裂出一个体积最大且形式最接近多维超正方体的子空间,之后还包括:
6.如权利要求1所述的一种多维自适应增量R树索引构建方法,其特征在于,所述基于查询语句遍历多维自适应增量R树的各个叶节点时,还包括:
7.一种多维自适应增量R树索引构建系统,其特征在于,所述系统包括:查询单元、输出单元、分裂单元;
9.如权利要求7所述的一种多维自适应增量R树索引构建系统,其特征在于,所述分裂单元还用于:
10.如权利要求9所述的一种多维自适应增量R树索引构建系统,其特征在于,所述分裂单元还用于:
...【技术特征摘要】
1.一种多维自适应增量r树索引构建方法,其特征在于,所述方法包括:
2.如权利要求1所述的一种多维自适应增量r树索引构建方法,其特征在于,在所述基于查询语句遍历多维自适应增量r树的各个叶节点,确定与所述查询语句的查询范围所匹配的叶节点,之前还包括:
3.如权利要求1所述的一种多维自适应增量r树索引构建方法,其特征在于,所述对所述叶节点进行规则判断和分裂处理,包括:
4.如权利要求3所述的一种多维自适应增量r树索引构建方法,其特征在于,所述将所述不规则叶节点进行分裂处理,包括:
5.如权利要求4所述的一种多维自适应增量r树索引构建方法,其特征在于,在所述将所述空间区域作为分裂边,在所述查询数据对应的高维空间...
【专利技术属性】
技术研发人员:张军,陆屹,史浩,魏晓萌,杨东锦,
申请(专利权)人:中国人民解放军九三一八四部队,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。