一种分区域双树结构的空间数据库索引方法

文档序号:6364743阅读:296来源:国知局
专利名称:一种分区域双树结构的空间数据库索引方法
技术领域
本发明涉及一种空间数据库索引方法。主要用于解决空间数据索引效率和准确性的问题,属于空间数据库领域的技术。
背景技术
空间索引的目的是为了在GIS系统中快速定位到所选中的空间要素,从而提高空间操作的速度和效率。空间索引的技术和方法是GIS关键技术之一,是快速、高效的查询、 检索和显示地理空间数据的重要指标,它的优劣直接影响空间数据库和GIS系统的整体性能。空间数据索引技术还处在不断的发展和完善阶段。目前对于空间数据索引技术及基于它的空间数据查询还存在很多问题有待进一步解决,如高效索弓I算法的改进;复杂空间查询方法的优化;查询操作中几何过滤方法;动态索引结构的建立等。传统的数据索引技术有B-树、B+-树、二叉树、ISAM索引、哈希索引等,这些技术都是针对一维属性数据的主关键字索引而设计的,并不能直接应用于空间数据库的索引。I、基于二叉树的索引技术
基于二叉树索引结构的典型范例有kd-树、K-D-B-树、LSD树等。这种索弓I结构的典型 kd-树一种二分索引树结构,主要用于索引多维数据点,但对复杂的空间目标,如折线、多边形、多面体等得索引却必须采用近似方法和空间映射技术。由此针对空间关系的查询效率非常低。为了能索引复杂的空间目标,一种是和索引二维空间目标的基于实体标志重复存储技术的Mkd-树被踢出了;为了将kd-树存储组织到外存,将Kd-树与B-树结合,提出了 K-D-B树;Skd-树的提出避免了空间目标的重复存储和空间映射,用空间目标的中心点来对空间目标集进行二分索引。但是所有这些方法对非点状空间目标的索引效率都较低。2、基于B-树的索引技术
B-树及其变体,被广泛应用于常规的数据库管理系统之中,实践证明其对大型数据库的索引具有出色表现。目前的空间数据索引技术,很多都是基于B-树,如Guttman提出的 R-树。R-树的思想是将空间目标及其索引空进用最小包围矩形来近似表示,可以简化计算、减少存储空间;将空间上邻近的目标组织在同一节点或同一分枝,可以减少外存访问次数。然而由于允许区间的重叠,导致了搜索路径的平均数量的增加,每一维的区间都要储存,需要较多的存储空间。为此,为了避免索引空间重叠的问题,之后提出了 R+-树;为了减少了查询对外存的访问次数,出现了 Cell-树等。总之这类索引结构需要解决的主要问题仍然是减少区域的重叠,提高搜索效率。3、基于哈希的格网技术
这种方法的基本思路是将索引空间划分为相等或不相等的一些小方格网,与每个格网相关的空间目标则存储在同一磁盘页,而格网的访问地址则可以直接通过求数组下标或某种算法得到。如Grid file, R-file等。这类方法主要用于索引多维空间点。4、空间目标排序法
其基本思想是将索引空间划分为许多小的格子,然后每个格子指定一个唯一的数字活编码,空间则用与其相交的一个或多个格子的数字来表示,或用与其相交格子的编码求得另一唯一编码来表示。实质是将k维空间的实体映射到一维空间。用一维的数值对多维的空间目标进行排序,常见的方法有位置键(Location Keys), Z-排序(Z_ording)等。

发明内容
技术问题本发明是针对空间数据库索引方法的解决方案。主要用于解决空间数据索引效率和准确性的问题。技术方案本发明的方法是一种策略性的方法,通过将空间区域分块,构建两级空间索引树,分步索引,达到提高索引效率和索引准确性的目的。一、体系结构
本发明分区域双树结构的索引方法是基于新构建的索引树,该索引树是由两个空间索引树组成的。第一个是扩展的R-树,它是根据地理空间特征来存放空间对象。第二个是空间关系索引树,根据它是用来表示空间区域的空间关系。两个空间索引树由在节点上相应的指针连接。其体系结构如图I所示。 扩展的R-树扩展的R-树是在R-树的基础上,构建一个平衡树。它符合R -树的基本条件。根据空间检索的需要,R-树的节点将被重新定义。定义扩展的R-树的叶节点定义如下
(KI,*P)},A)(I)
(I, *P)是R-树叶节点中包含的一对数组,其中*P是空间对象的指针,I是索引空间对象的MBR。A是该空间区域包含的空间对象。定义扩展的R-树的非叶子节点的定义如下
({(I,child _p*)}, R)(2)
({(I,child_p*)},R)是R-树非叶节点中包含的一对数组,其中孩子指针是指向下级节点的指针,I是所有孩子节点所涵盖的MBR。R是空间关系的特征向量。该扩展的R-树具有树下特点
I)设m(2〈=m〈=M/2)为节点包含索引项的最小数目(m通常取M/2,如果节点包含项目数小于m,则节点下溢,如果节点包含项目数大于M,则节点上溢),在一层的MBR的数量必须满足m彡η彡M的条件。换句话说,每一个空间区域至少包含m个MBR,最多包含M个MBR, 这自然限制了空间区域的面积,减少现场空间关系的计算复杂性。2)非叶节点的每个数组是其子节点的粗粒度的抽象。对于任何两个相邻层的节点,在第i层的节点代表第i+Ι层的粗粒度;相反第i+Ι层节点代表第i层的精细粒度。空间关系索引树空间关系索引树是上面扩展R-树的一个补充,它反映了空间区域的关系,通过聚类将空间区域聚集在一起。在空间关系索引树的每个节点上有一个指针, 指针指向相应的在扩展的R树上具有相同的特征向量的节点。空间关系检索树的构造是基于点的聚类原则。考虑的R-树不仅可以执行基于地区的搜索,也可以执行基于点的搜索,在构建空间关系索引树时,不但要具备R-树的的构建规则,还要具备如下的规则
O空间关系索引树的构建原则是点集的聚类。在最近距离的点应在同一节点,这意味着,类似的场景特征向量应放在同一节点。
2)在空间关系索引树的叶节点中的指针不指向实际的空间对象,而指向ER-树的相应节点。3)类似空间场景的检索是通过在空间关系索引树中搜索最近的空间关系特征点执行的。二、方法流程
1、查找方法
当要查找一个空间数据时,首先对其聚类,得其空间关系向量,查找所有与其重叠的空间目标或完全落入其的空间目标,必须对所有与其相交的子空间所关联的索引树进行查找操作,当找到与其相交的空间区域后,用R-树的查找算法对其进行索引,如果此空间区域的叶子节点已经是孩子结点,则所引到的目标结点就是所要查找的数据;如果不是孩子结点,则再向下一级进行查找。具体方法描述如下
Algorithm Search (N, ff) //W为所要查找的数据矩形,N为在索引树中结点的数据
矩形
Begin
R*: the space associated with W R: the space associated with N;
If R* is overlap with R Then
R—Search (N,W) ; //调用R-树的查找算法 For Each child node of N Do Search (N. Child, W);
Else return;
End;
2、插入方法
当插入一个空间数据时,如果插入的结点位置已经是叶子结点,则直接用R-树算法将其插入其中,如果插入的位置不是叶子结点,则判断此位置的孩子结点是否包含所要插入的空间数据;如果包含,则继续进行插入,如果不包含则直接插入到此结点位置。插入后重新调整空间关系。具体方法描述如下
Algorithm Insert (N. P) //将MBR为P的物体插入到节点为N的索引树上 Begin
If N is a leaf node of the tree Then R—Insert (N,P);
Else
Begin
Il决定N的下一层空间是否包含P node of N Do
Found:=False;
For Each child Begin
R:=the space associated with N
child;
5If R contain P completely Then Begin
Found:=True;
Insert (N. child, P);
Break;
End;
End;
If Not Found Then R—Insert (N,P);
End;
End;
3、删除方法
删除方法当删除一个数据时,如果删除的结点位置已经是叶子结点,则直接用R-树算法将其插入其中,如果删除的位置不是叶子结点,则判断此位置的孩子结点是否包含所要删除的空间数据,如果包含,则继续进行删除,如果不包含则直接删除数据。删除后重新调整空间关系。方法描述如下
Algorithm Delete (N, P) //从结点N中删除MBR为P的物体 Begin
If N is a leaf node of the tree Then
R—Delete (N,P) //调用R树的删除算法
Else
Begin
Found: =False; //决定N的下一层空间是否包含P
For Each child node of N Do
Begin
R:=the space associated with N’ s child;
If R contain P completely Then Begin
Found:=True;
Delete (N. P);
Break;
End;
End;
If Not Found Then R—Delete(N,P);
End;
End;
有益效果
本发明提出了一种新的空间数据索引的方法,针对空间数据索引时,当数据量很大、范围很广时索引效率非常低的问题,提出了一种解决方案。通过本方法构建空间索引树,可以适当的提高空间索引效率和准确性,尤其当面对海量数据时,随着数据量的增加,其索引时间的增加会逐渐减慢。


图I 一般形式的空间索引树结构2原始的空间分布图
图3由图2所构建的空间索引树结构图。
具体实施方案以图2的空间分布图为例,首先构建索引树,得图3,然后对其进行查找,插入和删除操作。I.查找方法
以图2为例,给定查找矩形区域QR,首先对QR进行聚类,求得其空间关系特征向量R*, 查找所有R*重叠的空间目标或完全落入R*的空间目标,必须对所有与R*相交的子空间所关联的R树进行查找操作。例如在图(I)中,查找所有与R*重叠的数据矩形,过程如下
(1)搜索类似的空间区域R*与根结点RO的索引空间相交,因此在RO中查找,返回满足查找要求的数据矩形内;
(2)R*与Rl不相交,不用继续比较;
(3)R*与R2,R3的索引空间相交,因此在R2,R3中查找,返回满足查找要求的数据矩形 B2. O, C3. I;
2.插入方法
以图2为例,插入一个数据矩形,必须首先确定其属于的最小子空间及其关联结点,然后再将其插入到对应的R树中。例如在上图中,要插入数据矩形Al. 0,首先要求出它的数据子空间Rl,然后将其插入到Rl中。3.删除方法
以图2为例,删除一个数据矩形,必须首先确定其属于的最小子空间及其关联结点,然后再将其从对应的R树中删除该数据矩形。例如在上图中,要删除数据矩形B2. 0,首先要确定包围它的最小子空间R2,然后从R2中将它删除。
权利要求
1.一种分区域双树结构的空间数据库索引方法,其特点在于构建新的索引树,该索引树是由两个空间索引树组成的第一个是扩展的R-树,它是根据地理空间特征来存放空间对象;第二个是空间关系索引树,根据它是用来表示空间区域的空间关系;两个空间索引树由在节点上相应的指针连接;空间关系索引树是上面扩展R-树的一个补充,它反映了空间区域的关系,通过聚类将空间区域聚集在一起,在空间关系索引树的每个节点上有一个指针,指针指向相应的在扩展的R树上具有相同的特征向量的节点。
2.根据权利要求I所述的空间数据库索引方法,其特点在于所述的扩展的R-树是在 R-树的基础上,构建一个平衡树,它符合R -树的基本条件,根据空间检索的需要,R-树的节点将被重新定义,扩展的R-树的叶节点定义为(KI,*P)},A),其中(I,*p)是R-树叶节点中包含的一对数组,其中*P是空间对象的指针,I是索引空间对象的MBR,A是该空间区域包含的空间对象,扩展的R-树的非叶子节点的定义为({(I,child _p*)},R),({(I, child_p*)},R)是R-树非叶节点中包含的一对数组,其中孩子指针是指向下级节点的指针,I是所有孩子节点所涵盖的MBR,R是空间关系的特征向量,索引空间对象的MBR和空间对象。
3.根据权利要求I所述的空间数据库索引方法,其特点在于所述的空间关系索引树是扩展R-树的一个补充,它反映了空间区域的关系,通过聚类将空间区域聚集在一起,在空间关系索引树的每个节点上有一个指针,指针指向相应的在扩展的R树上具有相同的特征向量的节点。
4.根据权利要求I所述的空间数据库索引方法,其特点在于所述的索引方法包括a)查找方法当要查找一个空间数据时,首先对其聚类,得其空间关系向量,查找所有与其重叠的空间目标或完全落入其的空间目标,必须对所有与其相交的子空间所关联的索引树进行查找操作,当找到与其相交的空间区域后,用R-树的查找算法对其进行索引, 如果此空间区域的叶子节点已经是孩子结点,则所引到的目标结点就是所要查找的数据; 如果不是孩子结点,则再向下一级进行查找;b)插入方法当插入一个空间数据时,如果插入的结点位置已经是叶子结点,则直接用R-树算法将其插入其中,如果插入的位置不是叶子结点,则判断此位置的孩子结点是否包含所要插入的空间数据;如果包含,则继续进行插入,如果不包含则直接插入到此结点位置,插入后重新调整空间关系;c)删除方法当删除一个数据时,如果删除的结点位置已经是叶子结点,则直接用 R-树算法将其插入其中,如果删除的位置不是叶子结点,则判断此位置的孩子结点是否包含所要删除的空间数据,如果包含,则继续进行删除,如果不包含则直接删除数据,删除后重新调整空间关系。
全文摘要
本发明涉及一种空间数据库索引方法。主要用于解决空间数据索引效率和准确性的问题,该方法是一种策略性的方法,通过将空间区域分块,构建两级空间索引树,分步索引,达到提高索引效率和索引准确性的目的。空间索引的技术和方法是GIS关键技术之一,是快速、高效的查询、检索和显示地理空间数据的重要指标,它的优劣直接影响空间数据库和GIS系统的整体性能。所设计的方法是基于新构建的索引树,该索引树是由两个空间索引树组成的。第一个是扩展的R-树,它是根据地理空间特征来存放空间对象。第二个是空间关系索引树,根据它是用来表示空间区域的空间关系。两个空间索引树由在节点上相应的指针连接。
文档编号G06F17/30GK102609530SQ20121003217
公开日2012年7月25日 申请日期2012年2月14日 优先权日2012年2月14日
发明者华瑜敏, 吴昊, 张登银, 程春玲 申请人:江苏新大诚信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1