论文部分内容阅读
随着计算机技术的快速发展和社会需求的急剧增长,GIS的应用越来越广泛,大量特别是海量空间数据的存储和查询成为GIS领域的关键问题。空间数据库是随着GIS的开发和应用而发展起来的数据库新技术。它并不是独立存在的系统,它与应用紧密结合,通常是GIS的核心。GIS用户提出的大部分问题都可以用查询的形式表达出来。查询功能是GIS面向用户的窗口,是用户感觉GIS能力的最直接的具体表现。由于空间数据量的庞大,空间数据和空间查询的高度复杂性,空间数据查询的效率成为了空间数据库性能的瓶颈,而现有的关系数据库的查询优化技术不完能全适用于空间数据库的查询优化,空间查询优化势必成为空间数据应用的难点和突破点。
近三十年来,各个国家和公司都投入了大量的精力致力于空间查询优化的研究,提出了很多的查询优化的技术,其中最常用的技术有空间索引技术,查询处理算法的优化和代价模型的估计,对于以后空间数据的查询优化的方向也是朝着这几个方向来进行研究。本文开展的研究工作包括以下几个方面:
(1)回顾了空间查询优化的一些技术和一些研究现状,讨论了空间数据的组织,类型及特征,对空间数据模型,空间数据结构,空间数据库技术以及一些空间数据的查询技术进行了分析与论述。
(2)阐述了用于空间查询优化的空间索引技术、查询处理算法和代价模型等技术,用以提高空间数据查询速度,具体分析了R树系列索引,四叉树索引和网格索引的数据结构和查询优化的效率。并在对这些常用空间数据索引技术的算法描述和性能比较基础上,实现了一种高效的空间索引--图幅索引,并以图幅为单位实现内存页面分配的一种动态缓存技术--图幅缓存。
(3)着重介绍了基于图幅索引和图幅缓存的查询优化技术。该图幅索引技术结合地图数据的标准分幅特性,存储数据和提高数据的查询效率。图幅索引是针对空间数据的“纵向分层,横向分幅的特点”来建立的属性字段索引,为国家的标准比例尺的数据的管理提供了最优的索引的支持。图幅缓存则利用所进行标准分幅所产生的图幅号进行一幅一幅的缓存,缓存到本地的文件里面,并实现实时更新的机制和一些事务机制和脱机机制以保证缓存数据的正确性,对数据库的客户端缓存解决数据库访问相当较低的问题,对关键操作实现降低网络流量及减少查询次数,降低服务器的负担。达到提高查询效率的目的。
(4)结合图幅索引和图幅缓存等优化技术,把查询优化和缓冲区的管理联系起来,设计了一个多层的优化查询体系结构,通过不同层次的优化,如缓存层,图幅索引层,并发层,矩形过滤层等等,一层一层的对空间数据进行优化,达到优化的目的。在这个系统中,查询过程被分为多个对称的层次,每个层次是对查询过程的附加处理,包括:剔出无效的记录、部分引入或全部引入新的数据、对查询数据执行某种变换,在此基础上可以预先制定查询策略,并能够较容易的扩充功能。定义好每一层之间的组织结构和顺序。另外此优化策略的扩充性非常的好,可以不断的加入新的优化策略到此优化体系结构上来,对查询进行不断的调优。
(5)并把此多层优化查询体系结构嵌入到分布式查询优化处理中,利用全局索引机制对查询任务进行分解,提供对空间范围查询的分布式任务的分解支持,通过全局空间索引,一个异构的空间查询转变成多个分布式子查询,这些子查询是对具体数据源的查询,可以并行完成,也可以逐个完成,分解成各个节点后就直接应用于多层优化查询体系结构来进行查询优化。最后生成分布式查询的最优查询计划。
(6)最后结合大型的国产GIS平台MAPGIS K9的查询处理模块,对系统采用这种优化查询体系结构,提高系统的查询效率,满足GIS用户的查询效率请求。并与其他的优化技术进行性能对比分析,找出其优缺点和需要改进的地方。