几种常见空间索引分类及特点

这里是空间索引的概括介绍,点击下载


2.1   网格索引

          网格索引的基本思想是将研究区域按一定规则用横竖线分为小的网格,记录每个网格所包含的地理对象。当用户
         进行空间查询时,首先计算查询对象所在的网格,然后通过该网格快速查询所选的地理对象。网格索引算法大致分为
          三类:基于固定网格划分的空间索引算法、基于多层次网格的空间索引算法和自适应层次嘲格空间索引算法。
         2.1.1基于基于固定网格划分的空间索引算法将一幅地图分割成a*b的固定网格,为落入每个格网内的地图目标建立索引,
         这样只需检索原来区域的I,矿b,
         以达到快速检索的目的。该算法的优点是操作简单,在涉及的数据量不大、不需要进行复杂操作时具有一定的适应性。
         2.1.2基于多层次网格的空闻索引算法将一幅地图分割成若干大小相同的小块,将落入该小
         块内的地图目标存入该小块、块对应的存储区域中,根据需要可以将小块划分成更小的块,建立多级索引。该算法的优
         点是检索的效率比较高,相比于纯粹的网格索引减少了特定的比较次数。但是网格划分的精细程度无法保证最优。对
         处于网格边缘的对象没有一个很好的解决办法,没有考虑到地图目标的水平与垂直分布对网格划分的影响。
         2.1.3自适应层次网格空间索引算法
         其网格大小由各具体的地图目标的外接矩形决定,避免了网格索引中网格划分的人为因素。算法的优点是网格
         划分稳定自动,以各地图目标的外接矩形的大小作为划分依据,避免了重复存储,在存储效率上有一定改善。不足就
         是算法实现复杂,建立索引前,必须知道各地图目标外界矩形的长、宽,按其面积大小排序:建立索引后,进行插入或删
         除操作时,涉及的地图目标的外接矩形面积若不是原有面积大小,则需要重新进行排序,效率反而会下降.
2.2  四又树索引
         四义树索引,类似于网格索引,也是对地理空间进行网格划分,对地理空问递归进行四分来构建四义树,
         直到自行设定的终止条件(比如每个节点关联图元的个数不超过
         3个,超过3个,就再四分),最终形成一颗有层次的四叉树。每个叶子节点存储了本区域所关联的图元标识列表和本区
         域地理范围,非叶子节点仅存储本区域地理范围。由于四叉树的生成和维护比较简单,且当空问数据对
         象分布比较均匀时,基于四叉树的空问索引可以获得比较高的空间数据插入和查询效率。
2.3   R树家族索引
         这是+。种面向对象分割技术的索引算法,将空问对象按范围划分,每个节点都对应一个区域和磁盘页,非页节点
         的磁盘页中存储着其予节点的区域范围;叶节点的磁盘页中存储着其区域范围内的所有空问对象的外接矩形。
        2.3.I基于R树的空间索引算法
         R树算法是一种层次数据结构动态索引算法,它是B树在K维空间上的自然扩展,是一种高度平衡树。R树由根节点、中问节点和叶节点三类节点组成,
         中问节点代表数据集空问中的一个矩形,该矩形包含了所有其他孩子节点的最小外接矩形,叶节点存储的是实际对象的外接矩形。
         R树允许节点相互覆盖,这种覆盖可以使R树保持较高的空问利用率和保持树的平衡。相比网格索弓l,无需预知
         整个研究区域的索引范围就能建立空问索引,减少了大地理对象的存储冗余。由于它是按数据来组织索引结构,是一
         种完全动态的索引结构,不需要周期性的索引重组。但是节点之间的过多覆盖不能保证检索路径的唯一性,有的甚至
         会检索整个树,造成查询效率的降低。 .
         2.3.2基干R+树的空间索引算法
         Sellis在1987年提出了R十树。R十树与R树类似,区别在于R+树中兄弟节点对应的空问区域无重叠,这样就消
         除了R树划分空间时因允许节点重叠而产生的死区域,减少无效查询次数,提高空间索引的效率,但插入删除操作则
         效率降低。R+树中间节点的所有矩形都是不相交的。如果一个对象的MBR被两个或多个IH树高层节点中的矩形分割,与
         这些非叶节点中矩形相联系的每个项都有指向这个对象的一个后继叶节点。这样树的高度增加,但搜索操作的性能会有很大提高。
         2.3.3基于R+树的空间索引算法
         Beckmann于1990提出了R+树。R.树相对于R树优化的地方是强制重新插入算法,其思路是:当新的空问对
         象索引项的插入导致节点溢出时,选择部分节点在同层节点问进行调整,以推迟节点分裂,从而达到优化R树整体结
         构的目的。基于R·树的空间索引算法提高了空间利用率,减少了节点分裂次数,但同时增加了CPU的计算代价.
2.4  金字塔索引
         Berchtold于1998年提出了金字塔方法,该方法基于一种特殊的优化高维数据的不均衡分割策略,其原理是先将
         d维空问分成2d个金字塔,共享数据空间的中心点为顶点,然后再将每个金字塔分割成平行于金字塔基的数据页。金
         字塔索引结构是将高维数据转化为一维数据,利用B+树进行操作。金字塔索引结构的优点是当处理范围查询时,这种索引结构的性能优子其他的索引结构,
         而且查询处理效率不会随着维数的增加而降低,原因在于在处理范周查询时充分利用了金字塔空问中相近的点在B+树中更有可能在B+
         树的同一个数据页上这个事实。但金字塔索引结构的优点是基于均匀数据分布和超立方体查询的,对于那些覆盖数
         据空问边界的查询不是很理想,而现实世界中的数据很少是服从均匀分布的.
3结论
         在这些索引中,不同的索引有各自的优点和缺点以及适用范围。需要选取哪种空问索引方法,要根据实际情况和
         需求来确定。实际应用中也是采用多种索引结构的方法,取长补短。高效的空问索引方法一‘直是很多学者专家研究的
         课题,有很多问题需要进。‘步的解决的例如高效索引树算法的改进、复杂空问查询方法的优化以及查询插入操作中
         算法的优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值