一种应用于海量空间数据检索的索引方法及装置制造方法

文档序号:6507610阅读:280来源:国知局
一种应用于海量空间数据检索的索引方法及装置制造方法
【专利摘要】本发明公开了一种应用于海量空间数据检索的索引方法及装置。所述方法包括计算待建立索引的图层范围,生成最小边界矩阵;判断所述图层的类别,如果所述图层属于点状设施,则调用MCER树的生成算法生成MCER索引树;如果所述图层属于线路设施,则提取线路端点,生成端点的MCER索引树,再将线路添加到已有MCER树叶子节点的指针链表。本发明提高了索引树的生成效率,以及设备的检索查询效率。利用点状设备的索引树构建线路的树形结构,提高了设备之间的拓扑关联性,加快了线路索引树的生成效率。在MCER树的生成、插入算法中应用聚类技术,考虑了设备之间的语义关联性,提高了索引树的生成和更新的效率。
【专利说明】—种应用于海量空间数据检索的索弓I方法及装置
【技术领域】
[0001]本发明涉及数据索引【技术领域】,特别是涉及一种应用于海量空间数据检索的索引 方法。
【背景技术】
[0002]随着空间信息基础设施建设和空间数据获取技术的快速发展,空间数据规模越来 越大,对空间数据共享的要求越来越高,在依赖硬件改善数据库系统性能越来越困难的情 况下,以提高空间数据共享能力,增强空间数据的索引效率成为当前研究的热点前沿。
[0003]空间索引是指依据空间对象的位置和形状或空间对象之间的某种空间关系按一 定的顺序排列的一种数据结构,其中包含空间对象的概要信息,如对象的标识、外接矩形及 指向空间对象实体的指针。作为一种辅助性的空间数据结构,空间索引介于空间操作算法 和空间对象之间,它通过筛选作用,大量与特定空间操作无关的空间对象被排除,从而提高 空间操作的速度和效率。
[0004]目前GIS平台中主流的索引方法是四叉树索引、R树索引以及针对这种索引方法 的扩展和融合。四叉树索引就是递归地对地理空间进行四分,直到自行设定的终止条件匕 如每个节点关联图元的个数不超过3个,超过3个,就再四分),最终形成一颗有层次的四叉 树。R树是B树向多维空间发展的另一种形式,它将空间对象按范围划分,每个结点都对应 一个区域和一个磁盘页,非叶结点的磁盘页中存储其所有子结点的区域范围,非叶结点的 所有子结点的区域都落在它的区域范围之内;叶结点的磁盘页中存储其区域范围之内的所 有空间对象的外接矩形。基于此,许多混合和变种的索引方法被研究,比如R+树、R*树、QR 树、SS树、X树等。
[0005]由于海量地理空间数据除具有一般空间数据空间特征、空间关系、分类编码等特 征外,还具有非结构化、大数据特性、多分辨率、多层次、多时相性等特点,因此传统的空间 索引方法在处理海量空间数据过程中存在着很多问题,比如缺乏对海量数据的快速访问能 力、缺乏海量数据访问灵活性、对非结构化数据处理能力薄弱、难以控制不断增加的存储和 维护成本等。

【发明内容】

[0006]发明目的:针对传统空间索引方法缺乏对海量数据的快速访问能力、缺乏海量数 据访问灵活性、对非结构化数据处理能力薄弱、难以控制不断增加的存储和维护成本等问 题,本发明提出了一种应用于海量空间数据检索的索引方法及装置。
[0007]技术方案:一种应用于海量空间数据检索的索引方法,包括:
[0008]计算待建立索引的图层范围,生成最小边界矩阵;
[0009]判断所述图层的类别,如果所述图层属于点状设施,则调用MCER树的生成算法生 成MCER索引树;如果所述图层属于线路设施,则提取线路端点,生成端点的MCER索引树,再 将线路添加到已有MCER树叶子节点的指针链表。[0010]优选的,所述MCER树包括M阶,M是一节点中空间对象数目的最大值,令 M/2,则m为一调节变量,设定任意等级节点中空间对象数目的最小值,则MCER树
节点定义为一四元组:(Identifier, I, 0bject_ID, Pointers);所述 MCER 树中,
[0011]①每个节点包括的索引项介于m与M之间,除非它同时是根节点;
[0012]②根节点最少有两个孩子,除非它同时是叶子结点;
[0013]③非叶子节点作为索引目录,不存储空间对象,定义为三元组 (Identifier, I, Pointers),其中,Identifier是节点标识,I是包含所有孩子节点的最小 边界矩形,Pointer为指向孩子节点的指针;
[0014]④允许叶子节点出现在树的不同层次,高等级空间对象在树中的深度小,m值相对 小,低等级的空间对象在树中的深度大,m值相对较大;
[0015]⑤叶子节点存储空间对象,四元组(Identifier, I, ObjectID, Pointers), Identifier是节点标识,I是空间对象的位置坐标,0bjectID是空间对象的标识,Pointers 的描述分为两种情况:点状设施记录当前空间对象的语义关联点,线路设施记录以当前空 间对象为起点或终点的线路标识;
[0016]⑥叶子节点指向与节点关联的所有线路,分两种情况:如果两节点属于同一父节 点的孩子节点,则对应线路存储到离中心点较近的叶子节点的指针链表中;如果两节点属 于不同的父节点,则对应线路分别存储到两节点的指针链表。
[0017]优选的,所述计算待建立索引的图层范围,生成最小边界矩阵采用聚类分析算法, 考虑空间数据的语义距离。
[0018]优选的,所述语义距离的计算方法是,当前点状设施与第i个聚类中心的语义距 离为当前点状设施与第i个聚类中心的欧几里得距离减去当前点状设施与第i个聚类中已 有点状设施的拓扑连接关系数。
[0019]优选的,所述MCER树包括生成、插入、删除、更新、查询功能。
[0020]本发明还涉及一种应用于海量空间数据检索的索引装置,包括:
[0021]第一单元,用于计算待建立索引的图层范围,生成最小边界矩阵;
[0022]第二单元,用于判断所述图层的类别,如果所述图层属于点状设施,则调用MCER 树的生成算法生成MCER索引树;如果所述图层属于线路设施,则提取线路端点,生成端点 的MCER索引树,再将线路添加到已有MCER树叶子节点的指针链表。
[0023]本发明采用上述技术方案,具有以下有益效果:本发明实施例①对不同电压等级 的设备进行多尺度的索引,提高了索引树的生成效率,以及设备的检索查询效率。②利用点 状设备的索引树构建线路的树形结构,提高了设备之间的拓扑关联性,加快了线路索引树 的生成效率。③在MCER树的生成、插入算法中应用聚类技术,考虑了设备之间的语义关联 性,提高了索引树的生成和更新的效率。
【专利附图】

【附图说明】
[0024]图1为本发明实施例的方法流程图;
[0025]图2为本发明实施例的MCER树的功能结构图;
[0026]图3为本发明一种实施例的电力系统接线图,粗线表示500kV设施,细线表示 220kV设施,点表示变电站,线表示输电线路,虚线框表示最小边界矩形;[0027]图4为图3利用本发明实施例生成的MCER树结构。
【具体实施方式】
[0028]下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域普通技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
[0029]结合图1-4进行说明,首先定义MCER树:
[0030]对于M阶的MCER树,M是一节点中空间对象数目的最大值,令2≤m≤M/2,则m为一调节变量,设定任意等级节点中空间对象数目的最小值,则MCER树节点可以定义为一四兀组:(Identifier, I, Object_ID, Pointers)
[0031]①每个结点包括的索引项介于m与M之间,除非它同时是根节点;
[0032]②根节点最少有两个孩子,除非它同时是叶子结点;
[0033]③非叶子节点作为索引目录,不存储空间对象,因此可简化为三元组 (Identifier, I, Pointers),其中,Identifier是节点标识,I是包含所有孩子节点的最小边界矩形,Pointer为指向孩子节点的指针;
[0034]④允许叶子节点出现在树的不同层次,高等级空间对象在树中的深度小,m值相对小,低等级的空间对象在树中的深度大,m值相对较大;
[0035]⑤叶子节点存储空间对象,四元组(Identifier, I, ObjectID, Pointers), Identifier是节点标识,I是空间对象的位置坐标,0bjectID是空间对象的标识,Pointers 的描述分为两种情况:点状设施记录当前空间对象的语义关联点,线路设施记录以当前空间对象为起点(或终点)的线路标识;
[0036]⑥叶子节点指向与节点关联的所有线路,由于每条线路连接两个节点,因此分两种情况:如果两节点属于同一父节点的孩子节点,则对应线路存储到离中心点较近的叶子节点的指针链表中;如果两节点属于不同的父节点,则对应线路分别存储到两节点的指针链表。
[0037]根据上述定义,MCER与传统R树的区别主要在后两点,这也正是传统R树应用到电力GIS中的局限性所在,通过扩展传统R树,可以实现电力GIS中空间对象的高效索引。
[0038]本发明实施例的方法包括:
[0039]计算待建立索引的图层范围,生成最小边界矩阵;
[0040]判断所述图层的类别,如果所述图层属于点状设施,则调用MCER树的生成算法生成MCER索引树;如果所述图层属于线路设施,则提取线路端点,生成端点的MCER索引树,再将线路添加到已有MCER树叶子节点的指针链表。
[0041]还涉及一种实现上述方法的装置,包括第一单元,用于计算待建立索引的图层范围,生成最小边界矩阵;
[0042]第二单元,用于判断所述图层的类别,如果所述图层属于点状设施,则调用MCER 树的生成算法生成MCER索引树;如果所述图层属于线路设施,则提取线路端点,生成端点的MCER索引树,再将线路添加到已有MCER树叶子节点的指针链表。
[0043]以电网500kV变电站、线路以及220kV变电站、线路的索引树生成和插入为例,说明本发明的实施过程:[0044]①针对500kV的变电站,调用MCER树的生成算法,生成500kV变电站的MCER树。
[0045]②根据变电站与线路之间的拓扑连接关系,在500kV变电站MCER树的基础上,将 500kV的线路插入MCER树中叶子节点的链表中。
[0046]③针对220kV的变电站,调用MCER树的生成算法,聚类之后与已有的500kV变电站的MCER树合并,使之扩展。
[0047]④根据220kV线路与变电站的连接关系,在扩展的MCER树的基础上,将220kV的线路插入MCER树中叶子节点的链表中。
[0048]至此,MCER树的批量生成工作已完成,当新加入一个设备之后,需要对索引树进行更新操作,我们以新加入一条500kV的线路为例,说明MCER树插入算法的实施过程:
[0049]⑤调用MCER树的插入算法,完成线路两端变电站的插入或者更新操作。如果变电站插入过程发生节点溢出,调用节点上溢算法,完成节点的分裂,以及MCER树的生长过程。
[0050]⑥按照语义相近的原则,将线路插入到MCER树中对应的叶子节点的指针链表。
[0051]具体的,MCER树构建方法是:输电线路为例,详述空间索引的构建过程,输电线路是变电站之间的连线,以变电站的点状设施构建MECR树,另外输电设施包括500kV、220kV、 IlOkV三个电压等级,构建过程需要综合考虑这些因素,GenerateTree算法过程如下:
[0052]GTl按照电压等级将变电站分别聚类,设N为500kV变电站的个数,m和M为 MCER-树中每个结点能容纳实体的最小个数和最大个数,k为划分聚类的个数,取值范围 [N/M,N/m],初值为[N/M]。
[0053]1.1引入距离阈值,用典型点法选取k个聚类中心nodel, node2,......nodek ;
[0054]1.2基于语义距离计算公式(I),将其余的500kV变电站分配到最合适的聚类
Cl, C2,......Ck,其中SemD(node, nodei)表示当前变电站与第i个聚类中心的语义距离,
EuD (node, nodei)表示当前变电站与第i个聚类中心的欧几里得距离,T (node, Ci)表示当前变电站与第i个聚类中已有变电站的拓扑连接关系数,更新各聚类中心;
[0055]SemD (node, Iiode1) = EuD (node, node T (node, C1)(I)
[0056]1.3重复步骤1.2,直到聚类中心不变,如果果存在聚类中空间对象个数大于M,则将对应的空间对象继续聚类操作,根据R-树的区域查询性能模型中单位区域的磁盘访问次数计算评价函数P的值,如果存在聚类中空间对象个数小于m,则记PSm;
[0057]1.4k++,如果k〈 [N/m],重新执行上述步骤;
[0058]1.5最终选取评价函数值最小的k作为聚类划分的个数,并记录聚类结果;
[0059]1.6用同样的聚类方法,将各电压等级的变电站进行聚类。
[0060]GT2将显示分辨率最小的500kV变电站生成R树结构。
[0061]2.1根据GTl中生成的500kV变电站的聚类,进行自底向上的R树索引构建,保证所有的叶子节点在树中的深度相同,每个节点的扇出系数处于[m,M]。
[0062]2.2根据MCER树结构描述,为每个叶子节点生成线路链表,并将所有叶子节点的指针指向线路链表。
[0063]GT3根据220kV变电站的聚类情况,扩展已生成的500kV变电站R树。
[0064]3.1以步骤I中生成的220kV变电站的聚类组成的最小边界矩形(MBR)为基础,再进行聚类操作,选定k个初始的聚类中心MBRl,MBR2,……MBRk ;
[0065]3.2选定未聚类最小边界矩形MBR,分别计算MBR与各个聚类中心的语义相关性,以最小边界矩形中的变电站之间的拓扑连接关系为判断条件;
[0066]3.3重新计算聚类中心,重复执行3.2,直到聚类结果不变,记录聚类结果;
[0067]3.4将3.3的聚类结果与步骤2生成的500kV变电站R树合并,以覆盖面积最少为 条件,保证各等级的叶子节点在树中同一层次,不同等级的叶子节点在树中不同层次;
[0068]3.5根据MCER树结构描述,为220kV变电站的每个叶子节点生成线路链表,并将所 有叶子节点的指针指向线路链表。
[0069]GT4重复步骤3,直到所有电压等级的设施全部融入MCER树。
【权利要求】
1.一种应用于海量空间数据检索的索引方法,其特征在于,包括:计算待建立索引的图层范围,生成最小边界矩阵;判断所述图层的类别,如果所述图层属于点状设施,则调用MCER树的生成算法生成 MCER索引树;如果所述图层属于线路设施,则提取线路端点,生成端点的MCER索引树,再将线路添加到已有MCER树叶子节点的指针链表。
2.根据权利要求1所述的一种应用于海量空间数据检索的索引方法,其特征在于: 所述MCER树包括M阶,M是一节点中空间对象数目的最大值,令2≤m≤M/2,则m为一调节变量,设定任意等级节点中空间对象数目的最小值,则MCER树节点定义为一四元组: (Identifier, I, Object_ID, Pointe rs);所述 MCER 树中,①每个节点包括的索引项介于m与M之间,除非它同时是根节点;②根节点最少有两个孩子,除非它同时是叶子结点;③非叶子节点作为索引目录,不存储空间对象,定义为三元组 (Identifier, I, Pointers),其中,Identifier是节点标识,I是包含所有孩子节点的最小边界矩形,Pointer为指向孩子节点的指针;④允许叶子节点出现在树的不同层次,高等级空间对象在树中的深度小,m值相对小, 低等级的空间对象在树中的深度大,m值相对较大;⑤叶子节点存储空间对象,四元组(Identifier,I, ObjectID, Pointers),Identifier 是节点标识,I是空间对象的位置坐标,ObjectID是空间对象的标识,Pointers的描述分为两种情况:点状设施记录当前空间对象的语义关联点,线路设施记录以当前空间对象为起点或终点的线路标识;⑥叶子节点指向与节 点关联的所有线路,分两种情况:如果两节点属于同一父节点的孩子节点,则对应线路存储到离中心点较近的叶子节点的指针链表中;如果两节点属于不同的父节点,则对应线路分别存储到两节点的指针链表。
3.根据权利要求1所述的一种应用于海量空间数据检索的索引方法,其特征在于:所述计算待建立索引的图层范围,生成最小边界矩阵采用聚类分析算法,考虑空间数据的语义距离。
4.根据权利要求3所述的一种应用于海量空间数据检索的索引方法,其特征在于:所述语义距离的计算方法是,当前点状设施与第i个聚类中心的语义距离为当前点状设施与第i个聚类中心的欧几里得距离减去当前点状设施与第i个聚类中已有点状设施的拓扑连接关系数。
5.根据权利要求1-4任一所述的一种应用于海量空间数据检索的索引方法,其特征在于:所述MCER树包括生成、插入、删除、更新、查询功能。
6.实现如权利要求1-5任一项所述的一种应用于海量空间数据检索的索引装置,其特征在于,包括:第一单元,用于计算待建立索引的图层范围,生成最小边界矩阵;第二单元,用于判断所述图层的类别,如果所述图层属于点状设施,则调用MCER树的生成算法生成MCER索引树;如果所述图层属于线路设施,则提取线路端点,生成端点的 MCER索引树,再将线路添加到已有MCER树叶子节点的指针链表。
【文档编号】G06F17/30GK103440280SQ201310350235
【公开日】2013年12月11日 申请日期:2013年8月13日 优先权日:2013年8月13日
【发明者】吴克河, 王晓辉, 张晓良 申请人:江苏华大天益电力科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1