地理空间数据索引概述

Python与开源GIS

地理空间数据索引概述

2017-07-18 作者: xuzhiping 浏览: 2614 次

摘要: 空间数据索引就是指依据空间对象的位置和形状或空间对象 之间的某种空间关系,按一定顺序排列的一种数据结构,其中包含空间对象的概要信息,如对象的标识、外接矩形及指向空间对象实体的指针。作为一种辅助性的空间数据结构,空间索引介于空间操作算法和空间对象之间,它通过筛选...

空间数据索引就是指依据空间对象的位置和形状或空间对象 之间的某种空间关系,按一定顺序排列的一种数据结构,其中包含空间对象的概要信息,如对象的标识、外接矩形及指向空间对象实体的指针。作为一种辅助性的空间数据结构,空间索引介于空间操作算法和空间对象之间,它通过筛选作用,大量与特定空间操作无关的空间对象被排除,从而提高空间操作的速度和效率。空间索引性能的优劣直接影响空间数据库和地理信息系统的 整体性能,它是空间数据库和地理信息系统的一项关键技术。

空间索引一般是自顶向下、逐级划分空间的各种数据结构,早期的空间数据管理软件,大多采用文件系统存储空间信息,属性则存储在关系数据库中。空间数据索引一般采用网格索引。网格索引主要用来对点的集合进行索引(尽管它们也能用来处理区域),可扩展哈希形式目录用于对空间数据进行索引。许多索引结构 (Bang文件、Buddy树和多级别网格文件)的提出都是对这个基本思想进行深化而得的。

对一些非常自然地处理区域数据,应用最广泛的是R树,已经可以在商用的DBMS中看到R树索引。这是由于R树相对简单,能同时处理点和区域数据,而且它的性能至少不比那些更复杂的索引结构差。R树是多维空间的递归子划分。与区域四叉树相比 (区域四叉树是基于多维空间的递归子分解并独立于实际数据集合这样的索引方法),R树中的空间分解依赖于索引的数据集。可以把R树想像成是B+树的思想应用到空间数据上,R树的许多变形包括BSP树、K-D-B树、Cell树、HilbertR树、Packed树、R * 树、R+树、TV树和X树同时处理区域数据和点数据的索引。

由于空间数据应用的逐步推广和关系数据库技术的发展,基于关系数据库或者对象关系数据库的空间数据管理正在逐步 成为空间数据管理发展的潮流。因此,研究基于关系数据库技术下 的空间数据组织成为当前空间数据管理研究的趋势。目前许多关系数据库平台厂商推出了一系列支持空间数据的数据库管理平台,如Oracle SPatial,SPatial Informix,DB2,Sybase SPatial Extender等。大多数空间数据库平台厂商都提供了自有的空间索引技术,如Oracle Spatial就采用了四叉树和R树作为其空间索引。但是,不同的空间数据库平台之间的空间索引却不能通用,Oracle空间数据库的索引机制就不能应用于Informix数据库中。这就给数据库应用者和数据库开发人员造成了很大不便,他们不得不面对各种不同的开发环境和开发模式,与数据库技术发展的通用化,模块化,接口标准化背道而驰。因此,建立在通用关系数据库管理系统的空间数据 索引机制的研究就越来越有其价值。

关注“开源集思”公众号
获取免费资源

随机推荐


Copyright © from 2014. 开源地理空间基金会中文分会 吉ICP备05002032号

Powered by TorCMS

OSGeo 中国中心 邮件列表

问题讨论 : 要订阅或者退订列表,请点击 订阅

发言 : 请写信给: osgeo-china@lists.osgeo.org