格网空间索引及其在空间数据库中的应用文档格式.docx
- 文档编号:17580098
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:8
- 大小:117.98KB
格网空间索引及其在空间数据库中的应用文档格式.docx
《格网空间索引及其在空间数据库中的应用文档格式.docx》由会员分享,可在线阅读,更多相关《格网空间索引及其在空间数据库中的应用文档格式.docx(8页珍藏版)》请在冰豆网上搜索。
摘要I
AbstractI
第一章引言1
1.1空间索引概述1
1.2空间索引基本类型1
第二章格网索引3
2.1格网索引基本思想3
2.2建立格网索引3
2.3使用空间索引4
第三章空间索引在空间数据库中的应用5
3.1ArcSDE索引基本功能5
3.2ArcSDE空间索引的原理6
3.3ArcSDE矢量数据访问类的设计与加载7
4结论与展望9
5参考文献10
第一章引言
1.1空间索引概述
空间索引是对存储在介质上的数据位置信息的描述,借以提高系统对数据获取的效率。
空间索引依据空间对象的位置和形状或空间对象之间的某种空间关系,按一定顺序排列组成一种数据结构,其中包含空间对象的概要信息,如对象的标识、最小外接矩形及指向空间对象实体的参数等。
在GIS中,各种数据格式、数据源的数据集中在空间数据库中,为了能较好的完成
空间信息的自动综合,应为这些信息建立能快速完成空间信息提取,并能进行信息还原的各种空间数据索引。
作为一种辅助性的空间数据结构,空间索引介于空间操作算法和空间对象之间,它通过筛选作用,排除大量与特定空间操作无关的空间对象,从而提高空间操作的速度和效率。
空间索引的性能的优劣直接影响空间数据库和地理信息系统的整体性能,它是空间数据库和地理信息系统的一项关键技术。
1.2空间索引基本类型
常见的空间索引方法一般是自顶向下、逐级地划分地理空间,从而形成各种树状空间索引结构。
有代表性的规则分割方法包括规则格网索引方法、BSP树和KDB树等。
基于对象的分割方法包括R树、R+树、Cell树和四叉树等。
较为成熟也是应用广泛的索引类型主要有:
格网索引、BSP树、四叉树和R树。
(1)格网索引
格网型空间索引原理比较简单明了,易于实现。
其基本思想是将研究区域用横竖线条划分大小相等和不等的格网,记录每一个格网所包含的空间实体。
当进行空间查询时,首先计算出查询对象所在格网,然后再在该格网中快速查询所选空间实体,确定与空间操作有关的空间对象,排除与空间操作无关的空间对象。
规则格网空间索引的查询速度快,但数据量大。
(2)BSP树
BSP树是90年代后广泛应用在射线计算、碰撞计算和网络上。
BSP树从结构上可以分割为若干子集。
BSP树实质上是一种二叉树,它将地理空间逐级进行一分为二的划分。
BSP树能很好地与地理对象的空间分布情况相适应,但对一般处理情况而言,BSP树深度较大,对各种操作均有不利影响。
(3)四叉树索引
四叉树索引是一种重要的空间数据索引技术。
根据数据二维分布的特点,将空间区域按照4个象限进行递归分割,直到子象限的数据单调为止,最后得到一棵四分叉的倒向树。
四叉树有两种:
一种是层次四叉树,在子节点与父节点之间设立指针,由于指针占用空间较大,难以达到数据压缩的目的。
层次四叉树由于涉及层次间指针操作,维护起来比较麻烦,故较少采用。
另一种是线性四叉树,它不需要一记录中间节点和使用指针,仅记录叶节点,并用地址码表示叶节点的位置。
因而,线性四叉树广泛应用于数据压缩和GIS中的数据结构。
(4)R树和R+树
R树可以直接对地理空间中占据一定范围的地理要素进行索引,它按照几何对象的最小外接矩形MBR来索引二维或更高维数的地理对象,树的结点存储对象或对象集合的MBR。
R树的叶结点存储单个对象的MBR,以及指向对象空间位置的指针,非叶结点存储指向更低一级结点指针。
R树有一个重要的特点就是存储的结点所对应的空间区域可以互相重叠,这样的特性使R树比较容易进行删除和插入操作,但会使空间搜索的效率降低,囚为区域之间有重叠,可能要对多条路径进行搜查后才能得到最后的结果。
这样的不足促使人们寻找区域之间没有重叠的新的索引方法,这样发展了R+树。
在R+树中,结点对应的空间区域没有重叠,这样划分空间可以使空间搜索的效率提高,但由于在删除和插入地理对象时要保证结点对应的空间区域不重叠,又会造成删除和插入操作的效率降低。
第二章格网索引
2.1格网索引基本思想
将空间区域进行划分,划分为大小相等或不等的网格,每个网格都包含一定数量的空间对象,在进行查询操作时,先确定查找范围所对应的网格,然后在从这些网格中快速查找满足条件的空间对象
2.2建立格网索引
(1)将整个图幅划分若干格网,并逐个标号。
图2-1空间格网划分及其编号
(2)从数据库中读出数据,计算其经过的格网,记录格网编号。
图2-2存入空间实体
(3)在经过的每个网格中记录下空间实体的地址或引用。
2.3使用空间索引
在对地理对象进行检索操作时,按点、线、面进行:
先根据鼠标点确定目标的对象的格网号,根据格网号从格网数组中提取所存目标的关键字及分类码,然后依据分类码判断拾取目标是点、线还是面,再从相应的数组中提取与格网数组中相对应的目标对象,并判断鼠标选中的是哪个目标,最后将选中的目标对象信息显示出来。
第三章空间索引在空间数据库中的应用
3.1ArcSDE索引基本功能
ArcSDE通过格网索引途径实现空间数据索引。
索引所实现的基本功能有:
(l)图形数据在空间区域中的位置确定
ArcSDE以二进制方式存储图形数据,在图形数据表只是存储了图形的形状。
因而要采用其它方法描述空间区域中图形所在的位置。
(2)图形与方格的“非结构性”关系
在图层入库时,图层的空间区域被划分成格网,系统从而确定了每个图形所占据的方格。
在图层对应的索引表中只记录每个被图形占据的方格。
每个图形要素(feature)可能只占据一个方格,也可能占据多个方格。
这样,图形要素与方格的关系具有不确定性,即“非结构性”关系
(3)过滤与精化
当进行空间查询时,根据给定的范围在索引表中得到其对应的方格,继而得到占据方格的图形,这样就可以只判断与索引块相关的图形,减少了查找时间,这个过程称为过滤。
然后根据图形表的MBR与传统的空间关系计算方法,可以精确的得出查询结果,即精化。
ArcSDE采用了具有变长的压缩二进制数据类型记录每个被图形占据的方格及占据方格的图形编号(gid)。
该记录被存于在索引表中,每个方格的对角点坐标也相应记录在索引表中,并在层表(layertable)中形成了两个表的逻辑关系。
图3-1业务表结构
图3-2索引表结构
3.2ArcSDE空间索引的原理
ArcSDE釆用的架构如图所示,这种结构支持多个用户同时对数据库中的数据进行访问。
客户端和服务器端的请求与服务是通过TCP/IP协议来完成的,对空间数据的传输是通过ATM方式来实现的。
真是由于这种数据传输机制,用户不需要和数据直接进行交涉,只需知道自己对空间数据要进行何种操作即可,不需要关心数据的存储方式和存储位置。
关系数据库与ArcSDE的结合真正实现了地理特征数据和空间数据的统一存储,同时也拥有了两者的有点,融合了两者的功能,真正实现了空间数据的图属一体化
空间索引的目的是减少由ArcSDE执行Shape与Shape比较的次数。
当一个ArcSDE客端在一次请求中应用一个空间过滤器时,ArcSDE服务器和RDBMS必须在图层的数据记录中确定出哪些Shape满足空间约束条件。
ArcSDE从客端空间过滤器确定过滤器的封装边界以及过滤器封装边界所跨的格网单元,这些值在SQL的wHERE子句中传递给RDBMS。
(1)RDBMS从ArcDE接收SQL语句(该语句包括格网单元和封装边界的坐标)。
where子句定义了在空间索引中需要选择的格网单元。
一旦在空间索引表中确定了格网单元,封装边界的搜索就从所选择的格网边界开始。
(2)利用过滤器封装边界和空间索引表中的Shape封装边界,RDBMS可以减少最初的选择集。
RDBMS比较过滤器封装边界和Shape封装边界是否有重叠,如果有,则该Shape被选择来做下一步的Shape比较。
(3)在ArcSDE中,空间过滤器的Shape与
(2)的要素封装边界进行比较。
如果要素封装边界与过滤器的Shape重叠,这些数据记录就不会用到最后一步。
(4)Shape与Shape比较是一个过滤器Shape和要素Shape的二进制比较过程,一旦有重叠发生,比较的结果记录就返回给客端。
(1),
(2)是用来减少由ArcSDE执行的Shape比较的次数。
减少返回的数据记录有助于减少Shape比较的数量,因而也就减少了空间查询的时间。
3.3ArcSDE矢量数据访问类的设计与加载
ArcSDE支持3种不同的应用编程接口,可以根据项目的需要进行选择:
(1)Arcobjects
Arcobjects是一组比较完整的GIS组件库,采用Microsoft的COM组件标准,提供从GIS信息表现、空间数据加载到空间分析等各个方面的功能,功能非常强大。
ESRI的ArcGISDesktop系列就是基于该组件库开发。
(2)ArcSDE客端API
ESRI开发了一套基于oee简单要素标准(simpleFeaturespeeification)实现的API,面向开放系统开发,可以用于与ArcSDE数据服务的交互。
ESRI目前提供基于C语言和Java语言的实现。
(3)SQLAPI
ArcSDE提供了一组SQLAPI与GeoDatabase(地理数据库)交互。
这种方法绕过了ArcSDE,适合于访问非空间信息和具有空间可用字段的数据库(如oracle,IBMDB
(2)。
主要利用DBMS自身的空间数据管理功能,不能完全满足GIS的需要。
通过Arcobjects访问ArcSDE可以充分发挥ArcSDE的功能,支持Win32
3.4.2ArcSDE的矢量数据访问模型
ArcSDE通过层表(Layertable)、特征表(Featuretable)、空间索引表(spatiaiindextable)来在RDBMS中存储和管理矢量数据。
特征表和空间索引表对用是不可见的。
对用来说,空间数据的存储和管理主要是通过对层表的读写操作实现。
创建层表的过程是把商业数据库表的整型字段赋予空间属性,使其成为空间可用(spatialenable),来存储空间实体数据,实体属性(如长度、面积等)用普通字段存贮。
数据访问模型如图所示。
图3-3ArcSDE数据访问模型
每个实体对应层表中的一条记录,可以像通常那样对表中的数据进行查询、合并,也可进行图形到属性和属性到图形的查询。
其中图形的查询要通过称为Shape的结构。
Shape是ArcSDE中表示空间数据的单元,它可以是一个点、一条线、一个面,一个Shape就是地图上的一个对象,如一座城市、一条河流、一个湖泊。
Shape内部存贮时又分为一个或多个part,每个part又可分为一个或多个subpart。
它包含地图对象的参考坐标信息、拓扑信息和点坐标信息。
对数据库中矢量数据的读写必须通过Shape来完成,也就是,从数据库返回的矢量数据先读入Shape结构,然后再从中提取需要的信息,同样,要写入数据库的矢量数据必须先写入Shape结构,再把Shape写入数据库。
4结论与展望
针对空间数据本身的特点及空间数据的查询特点,国内外学者作了很多研究工作,设计出很多空间索引方法,空间索引技术研究一直是空间数据库研究领域中的一个热点,但对于空间索引技术及基于它的空间数据查询还存在很多问题,有特进一步解决.随着新的技术和方法不断的发现和完善,对空间索引技术的研究也将不断地深入下去。
空间数据库技术是地理信息系统的基础和核心.随着地理信息系统的广泛使用,人们对作为地理信息系统核心部分的空间数据库要求也越来越高。
由于空间数据非常复杂且数据量相当大,因此,建立一种有效的空间数据库是地理信息系统领域的主要研究方向之一,建立适合于特定应用的高校空间索引至关重要。
5参考文献
[1]肖伟器,冯玉才,肖大海.地图数据库中的空间索引计算机工程与应用,1995,2
[2]顾军,吴长彬常用空间索引技术的分析微型电脑应用,200l,17
[3]王家耀空间信息系统原理科学出版社
[4]毋河海地图数据库原理测绘出版社
[5]张成才,孙喜梅,黄慧.SDE的实体一关系模型空间数据管理方式研究[J].计算机工程与应用,2003
(2).
[6]陈述彭,周成虎.《地理信系统导论>
>
[M].科学出版社.2005.1
[7]潘瑜春,钟耳顺,梁军.基于空间数据库技术的地籍管理系统研究[J].地理究研究,2003.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 空间 索引 及其 数据库 中的 应用