基于空间数据库的几种常用空间索引技术研究

基于空间数据库的几种常用空间索引技术研究
基于空间数据库的几种常用空间索引技术研究

Geomatics Square

NO.6 2011 (Total 113)

科技交流

基于空间数据库的几种常用空间索引技术研究

白航

(广东省国土资源测绘院,广州510500)

摘要:空间数据库是地理信息系统(GIS)的基础和核心,空间索引技术通过对存储介质上数据位置信息的描述来提高数据查询、检索及获取效率;其好坏直接影响空间数据库系统的可用性和可扩展性。本文介绍了几种常见的空间数据库索引技术:简单格网空间索引、K-D 树空间索引、R 树空间索引、四叉树空间索引等;系统总结了空间数据库索引技术的研究进展,探讨了其发展前景和存在问题。

关键词:空间数据库;空间索引;GIS

1.引言

空间数据库技术是随着GIS (地理信息系统)的发展而兴起的一门新技术,复杂的地理环境和海量、多维、结构复杂的空间数据导致了基于空间数据库查询、检索及空间计算的开销一般要比关系数据库大的多,特别是查询语句中条件谓词包含一些对空间数据操作或连接的一些函数,这些函数的计算开销远比数值计算或字符串比较等要大。若使用传统的关系型数据库管理系统(DBMS)来管理空间数据,其存在固有缺陷,用顺序扫描的方法查询的效率非常低。因此为了提高查询效率,采用空间索引技术十分必要。

2.空间数据库索引技术

空间数据用来表示空间物体的位置、形状、大小和分布特征等方面信息,适用于描述二维、三维或多维分布的区域现象。空间数据库是计算机物理存储介质上存储的地理空间数据的总和。数据库的索引机制可以用来快速访问某条特定查询所请求的数据,而无需遍历整个数据库。传统的关系数据库为了提高检索效率,一般都会建立一系列的索引机制,如B 树等,但这些都是一维索引,无法处理空间数据库中的二维和多维的

空间数据。

空间数据库索引技术是通过对存储在介质上的数据位置信息的描述,来提高空间数据库的查询性能和数据获取效率,索引技术的好坏直接影响到空间数据库系统的成败。空间数据索引作为一种辅助性的空间数据结构,介于空间操作算法和地理对象之间,通过筛选、排除大量与特定空间操作无关的地理对象,缩小了空间数据的操作范围,从而提高空间操作的速度和效率。

3.几种常见的空间索引技术

3.1简单格网空间索引

格网空间索引的原理简单,即把目标空间实体集合所在的空间范围划分成一系列大小相同的格。如图3-1所示,每一个格相当于一个桶(bucket ),记录落入该格内的空间实体的编号。基于格网索引的查找思路也较简单,在数据分布较均匀的情况下,查询效率较高。但格网的大小直接影响了索引表的大小,格网太小,索引表会急剧膨胀,维护索引表本身的花费增加,查询效率随之下降;反之,落在一个格内的空间实体可能会过多;因此格的大小严重制约着查询效率的提高。

8

Geomatics Square

NO.6 2011 (Total 113)

图4

四叉树结构的空间索引

科技交流

3.2 K-D 树空间索引

K-D 树是早期用于索引多维空间数据的数据结构之一。K-D 树的每层都把空间划分为两个部分,沿着树的根结点进行一维划分;依次划分下一层结点,尽量保证左右子树中的结点数目均衡,当结点中包含的点数少于叶子结点中包含的最大点数时停止划分。下图显示了用K-D 树索引来表示一个二维点集。

每条线对应树中的一个结点,叶子结点中包含的最大点数阈值设置为1,线号表示对应结点出现在树中的层数。为了平衡K-D 树的深度,可结合B 树来得到K-D-B 树索引结构,但此类索引树对于占据一定空间范围的空间实体而言(如线和多边形),构造空间索引仍然不方便。因为当使用数据库表构造K-D 树的索引表时,树型结构的递归层次深,导致查询效率降低。3.3 R 树空间索引

R 树是B 树在多维空间上的自然扩展,是由Guttman 提出的最早支持多维空间存取的方法之一。R 树是一种高度平衡树,可控制树的深度,采用对象的最小外包矩形(MBR )来近似表示空间实体。R 树有如下几条特性:(1)叶结点中存储该结点对应的空间要素的

MBR 和空间要素标识;(2) MBR 二维上是矩形,三维上是长方体,以此类推到高维空间;(3) 非叶结点存放其子女结点集合的整体外包络矩形和指向其子女结点的指针。R 树是一种动态索引结构,其查询、插入、删除可同时进行,而且不需要定期的对树结构重新组织。R 树适合于多维空间查询,不过由于空间数据分布的偶然

性,使得各层节点MBR 容易重叠,导致实际执行空间查询时,会产生多个查询分支,很大程度上降低了空间查询的效率。在最坏的情形下,一个空间查询会退化成线性搜索。若使用外部数据库来描述R 树,在缺乏特定的快速物理数据块访问接口情况下,效率也会大打折扣。

3.4 四叉树空间索引

在基于固定网格划分的四叉树空间索引机制中,

工作空间在X 、Y 方向上进行2N 等分,形成2N×2N 的网格,并以此建立N 级四叉树。在四叉树中,空间要素

标识记录在其外包络矩形所覆盖的每一个叶结点中。但当同一父亲的四个兄弟结点都要记录该空间要素标识时,则只将该空间要素标识记录在该父亲结点上,并按这一规则向上层推进(如图4)。层次型的树状结构并不适合使用数据库表来直接描述,可通过对四叉树的各层节点进行编码,来反映四叉树的层次结构。四叉树索引在内存中的层次型树状结构,其查询效率较高。

图1

简单格网索引

图2 用K-D

树表示一个二维空间中的点集

图3 空间实体分布与R

树索引构造图

9

Geomatics Square

NO.6 2011 (Total 113)

科技交流

4.空间数据库索引技术的发展

随着数字城市、定位服务、网络服务等应用的普及和推广,空间索引技术作为空间数据库的核心内容正朝着高维、网络化、基于空间关系等方面发展。4.1 高维空间索引

三维GIS 、多媒体数据库和时空数据库等对多维空间目标的搜索与更新效率的要求日益迫切,有必要研究一种可扩展的高维索引技术,能同时高效地检索一维、二维或高维的空间数据。高维数据索引的一项关键技术是降维,在降维后的子空间里运用一维或者二维空间索引技术。降维的方法有空间填充曲线、奇异值分解、距离映射算法等。4.2 基于空间关系的动态索引

空间数据库中的空间目标大多是不规则几何形状的,且存在着复杂的空间关系(如目标A 与B 相邻近,目标A 位于目标B 的西南方等),许多查询与分析操作都是基于目标间的空间关系。当前空间索引技术的劣势在于基于空间目标的位置信息建立索引结构,来提高空间数据库系统中的区域查询效率,难以根据目标间的空间关系建立有效的索引机制。若能根据空间目标间的空间关系(如邻近关系、方向关系等)动态地建立索引,这必将极大地提高空间查询和空间分析效率,从而有效地扩展空间数据库系统的数据组织、数据分析和数据维护功能。4.3 基于Web 的空间索引

基于Web 的空间数据库为信息的高度共享提供了可能,改变了传统数据信息传输、发布、共享及应用的过程和方式,是空间信息系统发展的必然趋势。基于Web 的空间数据库还有许多关键问题尚未突破,如何基于分布式体系结构实现快速、高效的空间信息检索,并提供数据传输和显示机制将成为研究热点。4.4 空间数据仓库索引

面向事务处理的空间数据库已满足不了现实需求,空间数据仓库从管理转向决策处理,能够满足新的

空间信息集成方案。空间数据仓库通过专业模型对不同源数据库中的原始业务数据进行主题抽取和聚集,从而为用户提供一个综合的、面向分析的决策支持环境。这一过程需要一套高效的数据索引技术作为保证,因此,空间数据仓库的索引技术必将得到不断地完善与发展。

5.结束语

GIS 在数字城市、计算机视觉、人工智能等领域中应用不断深入,空间数据库容量将达到TB 、PB 级,空间数据库索引技术和查询优化算法是提高空间数据处理效率的一个重要手段,是空间数据库中的一个重要组成部分。针对空间数据本身的特点及检索查询特征,国内外的学者已开发出许多空间索引技术,但仍处于初级阶段,需不断改进,如高效索引树算法和复杂空间查询方法的优化、查询操作中集合过滤方法、动态索引结构的建立等。

参考文献

[1] 郭际元,周顺平,刘修国.空间数据库[M].中国地质大学(武汉),2005.

[2] 邱建华.空间数据可索引技术研究[D].武汉大学, 2004.[3] 何雄.空间数据库引擎关键技术研究[D].中国科学院研究生院(计算机技术研究所),2005.

[4] 文强.空间数据库引擎关键技术研究[D].电子科技大学,2007.

[5] 郭薇,郭菁,胡志勇.空间数据库索引技术[M].上海交通大学出版社,2006.

[6] 郭龙江,李建中.空间数据库的索引技术[J].黑龙江大学自然科学学报,2005,03.

[7] 李杨.基于最小边界圆和最小包围扇形的空间索引方法[D].哈尔滨理工大学,2009.

[8] 滕连泽,刘洪斌,武伟.基于空间数据不同索引方法的比较[J].计算机与现代化,2006,01.

[9] 何珍文,郑祖芳,刘刚,吴冲龙.动态广义表空间索引方法[J].地理与地理信息科学,2011,05.

10

分布式数据库的索引技术研究

分布式数据库的索引技术研究 摘要:索引是分布式数据库中的一个重要对象。通过对分布式数据库中的索引管理技术的分析,论述了分布式数据库中索引的概念、特点、分类及使用原则等。分析了分布式数据库设计中的统一索引服务。在文章的最后部分给出了创建合理索引的一些建议。 关键词:分布式数据库索引检索 1索引的概念 索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标志这些值的数据页的逻辑指针清单。表的存储由两部分组成,一部分用来存放数据页面,另一部分存放索引页面。 2索引的创建 2.1 索引的创建 创建索引有多种方法,这些方法包括直接创建索引的方法和间接创建索引的方法。直接创建索引,例如使用CREATE INDEX语句或者使用创建索引向导,间接创建索引,例如在表中定义主键约束或者唯一性键约束时,同时也创建了索引。虽然,这两种方法都可以创建索引,但是,它们创建索引的具体内容是有区别的。 使用CREATE INDEX语句或者使用创建索引向导来创建索引,这是最基本的索引创建方式,并且可以定制创建出符合自己需要的索引。在使用这种方式创建索引时,可以使用许多选项,例如指定数据页的充满度、进行排序、整理统计信息等,这样可以优化索引。使用这种方法,可以指定索引的类型、唯一性和复合性,也就是说,既可以创建聚簇索引,也可以创建非聚簇索引,既可以在一个列上创建索引,也可以在两个或者两个以上的列上创建索引。 通过定义主键约束或者唯一性键约束,也可以间接创建索引。主键约束是一种保持数据完整性的逻辑,它限制表中的记录有相同的主键记录。在创建主键约束时,系统自动创建了一个唯一性的聚簇索引。虽然,在逻辑上,主键约束是一种重要的结构,但是,在物理结构上与主键约束相对应的结构是唯一性的聚簇索引。换句话说,在物理实现上,不存在主键约束,而只存在唯一性的聚簇索引。同样,在创建唯一性键约束时,也同时创建了索引,这种索引则是唯一性的非聚簇索引。因此当使用约束创建索引时,索引的类型和特征基本上都已经确定了,由用户定制的余地比较小。 3分布式数据库设计中的统一索引服务

空间数据库知识点总结

为什么与统计数据相比空间数据更复杂,那空间数据该如何组织与管理 ·数据类型多(几何数据、关系数据、辅助数据) ·数据操纵复杂(一般数据检索、增加、删除等,空间数据定位检索、拓扑关系检索等)·数据输出多样(数据、报表、图形) ·数据量大,空间数据种类多(测量、统计数据、文字;地图、影像等) 空间数据的非结构化特征 ·事务数据库:数据记录一般是结构化的。每一个记录有相同的结构和固定的长度,记录中每个字段表达的只能是原子数据,内部无结构,不允许嵌套记录 ·空间数据:这种结构化不能满足要求。需要存储地理实体的空间坐标:实体位置、大小形状;拓扑关系等 文件与数据库混合管理。基本思想:属性数据存储在常规的RDBMS中;几何数据存储在空间数据管理系统中;两个子系统间用标识符联系起来(即通过关键字联系)。优点:由于一部分建立在标准的RDBMS上,存储和检索数据比较有效、可靠。缺点:1由于使用了两个子系统,它们各自有自己的规则,查询操作难以优化,存储在RDBMS外的数据有时会丢失数据项的语义。2数据完整性的约束条件可能遭破坏,如在几何空间数据系统中目标实体仍存在,但在RDBMS中却已删除。 全关系型空间数据库管理系统。基本思想:采用同一DBMS存储空间数据和属性数据,即在标准的关系数据库上增加空间数据管理层;利用该层将结构查询语言(GeoSQL)转化成标准的SQL查询,借助索引数据的辅助关系实施空间索引操作。优点:省去了空间数据库和属性数据库间的繁琐连接,空间数据存取速度快。缺点:由于是存取、效率上总是低于DBMS 中所用的直接操作过程,且查询过程复杂。 对象关系数据库管理系统。关系型数据库+空间数据引擎。思想:用户将自己的空间数据交给独立于数据库之外的空间数据引擎,由空间数据引擎来组织空间数据在关系型数据库中的存储;用户需要访问数据的时候,再通过空间数据引擎,由引擎从关系型数据库中去除数据并转化为客户可以使用的方式。优点:访问速度快,支持通用的关系数据库管理系统,空间数据按BLOB存取,可跨数据库平台与特定GIS平台结合紧密,应用灵活。缺点:空间操作和处理无法在数据库内核中实现,数据模型较为复杂,扩展SQL比较困难,不易实现数据共享与互操作。 对象关系数据库管理系统。扩展对象关系型数据库管理系统。思想:对关系数据库关系系统进行扩展,使之能管理非结构化的空间数据,用户利用这种能力增加空间数据类型及相关函数,从而将空间数据类型与函数从空间数据引擎转移到数据库管理系统中。优点:空间数据的管理与通用数据库系统融为一体,空间数据按对象存取,可在数据库内核中实现空间操作和处理,扩展SQL比较方便容易实现数据共享与互操作。缺点:实现难度大,压缩数据比较困难,目前功能与性能还较差。·扩展的关系数据类型:1大对象类型LOB 2 BOOLEAN 3集合类型ARRAY 4用户定义的类型5面向对象的数据类型·扩展的对象类型:1行对象与行类型[第①步定义行类型②创建行类型③创建基于行类型的表2列对象与对象类型①创建列对象②创建表,定义其中属性是对象类型3抽象数据类型(ADT)·参照类型:REF类型,值是OID①创建两个行类型②创建两个基于行类型的表③描述这两个表的参照关系 地理空间建模的方法(二分法) 地理空间建模是对空间实体的数据抽象后对实体对象或场的描述。 ·基于实体的描述。主要描述不连续的个体现象,适合表示有固定形状的空间实体,强调个体现象,对象之间的空间位置关系通过拓扑关系进行连接。核心思想:将地理实体和现象作为独立的对象,以独立的方式存在,主要描述不连续的地理现象,任何现象都是一个对象,

空间数据库

《空间数据库》习题第一章: 1、什么是空间数据库? KA0394******* 2、空间数据库有哪些特点? 4001-520-520 3、空间数据库与传统数据库的差异何在? 4、空间数据库有哪些主要作用? 5、目前空间数据库存在哪些主要问题? 6、简述空间数据库发展的历史和现状。 7、何谓空间数据? 8、地理空间类型的表现形式主要有哪些? 9、何谓地理空间? 10、当前常用的数据库软件有哪些? 11、空间数据的类型主要有哪几种? 第二章: 1、空间实体包括哪些? 2、空间实体类型主要有哪几种?

3、什么是空间认知的三层模型? 4、什么是空间认知的九层模型? 5、地理空间场操作可分为哪几种? 6、何谓空间认知? 7、什么是E-R模型? 第三章: 1、OGC定义的基本几何空间对象有哪些? 2、GIS逻辑数据模型主要有哪些? 3、什么是面向对象数据模型? 4、面向对象数据模型所涉及的主要概念及主要技术有哪些? 5、三维空间数据模型主要有哪几种? 6、构成E-R模型的三要素指什么? 7、Spaghetti数据结构与拓扑矢量数据结构的差异何在? 8、简述三维矢量模型的数据结构特征。 9、简述三维体元模型的数据结构特征。

10、空间关系主要有哪几种? 11、GIS逻辑数据模型主要有哪几种? 第四章: 1、ArcGIS的Geodatabase是如何定义空间对象模型的? 2、空间数据的管理方式有哪些? 3、什么是空间数据引擎? 4、空间数据库引擎管理空间数据的实现方法有哪些? 5、何谓栅格金字塔结构? 6、空间数据库引擎的作用是什么? 7、栅格数据的存储方式主要有哪些? 8、栅格数据有几种取值方法? 9、空间数据的组织方式有哪些? 10、主要空间数据库管理方法各有何优缺点? 第五章: 1、四叉树索引有几种方法? 2、简述网格空间索引的基本原理。

浅议地理信息系统与空间数据库建设

浅议地理信息系统与空间数据库建设 发表时间:2019-05-06T16:38:47.200Z 来源:《防护工程》2019年第1期作者:蔡云霞 [导读] 对于城市范畴中的所有空间数据,赶着全方位的管理作用,通过对地图的数据化处理,进而实现对各种信息的系统化储存。 内蒙古自治区第七地质矿产勘查开发院内蒙古呼和浩特 010020 摘要:该文阐述了在地理信息系统建设过程中,地图数据库、空间数据库的作用与差别。针对我国现阶段地理信息系统建设的现状,分析了现阶段同时建立与维护空间数据库与地图数据库的必要性。指出了随着空间数据库技术的发展,空间数据库最终将取代地图数据库,同时提供多比例尺地图服务及各种时空尺度的地理信息服务。 一、地理信息系统与空间数据库的相关简介 地理信息系统又称“地学信息系统”,是一种特定的十分重要的空间信息系统。它是在计算机硬、软件系统支持下,对整个或部分地球表层空间中的有关地理分布数据进行加工处理的技术系统。而所谓的空间数据库,正是以空间数据为基础,力辅这以计算机硬件力量的支撑和扶持,实现对相关数据的处理活动,以实现提供空间动态层面的多元化,从根本上提升城市服务的质量的一种技术操作手段。空间数据库是地理信息系统中的基础与核心元素,对于城市范畴中的所有空间数据,赶着全方位的管理作用,通过对地图的数据化处理,进而实现对各种信息的系统化储存。 二、空间数据库的特点 GIS空间数据库与普通的数据库在模型及功能上有很大的差别,总的来说,空间数据有以下特征。空间特征:每一个空间对象具有空间坐标。除了通用数据库管理系统或文件系统关键字索引和辅关键字索引以外,一般都需要建立空间索引。非结构化特征:空间数据不满足结构化的要求。将一条记录表达一个空间对象时,它的数据项有可能是变长的。例如,一条弧段的坐标,其长度将是不可预料的;此外,一个对象也可能包含另外的一个或多个对象。空间关系的特征:空间数据中记录的拓扑信息表达了多种的空间关系。该种拓扑数据结构一方面既方便了空间数据的查询和空间分析,另一方面也给空间数据的一致性和完整性维护增加了复杂性。海量数据特征:空间数据库是海量数据。由于空间数据量大,需要在二维空间上划分出块或者图幅,垂直方向上分层来组织。由于空间数据的如上几个特征,当前通用的关系数据库系统难以满足要求。而大部分GIS软件将采用混合管理的模式――即用文件系统来管理几何图形数据,用商用的关系数据库管理属性数据。但是存在的问题是,文件管理系统的功能较弱,特别在数据的安全性、以及一致性、完整性、并发控制、数据损坏后的恢复方面都缺乏基本的功能。所以GIS 开发商一直在寻找商用数据库管理系统来同时管理图形和属性数据。 三、空间数据库构建中的数据分析 空间数据库在实际构建前需对设计的用途以及应用对象进行确认,确保空间数据分析能够为数据库的构建奠定良好的基础。具体数据分析过程中主要体现在三方面,即:首先,做好数据库应用对象的调查工作。通过对应用对象的调查了解信息的需求以及信息处理内容,以此为依据确定空间数据库的构建目标。其次,对数据研究范围进行确定,主要包括区域边界与地理控制点两方面。最后,保证源数据的准确性。为使空间数据库中的数据具有参考价值,需注意综合考虑调查资料与其数学精度,如地物间是否在逻辑上保持一致或图面的相关表示是否准确等。尤其要求在构建前应使各坐标系统进行统一,避免出现数据不统一的情况。 四、空间数据库分类 空间数据可分为矢量数据和栅格数据两大类。矢量数据用点、线、面等来描述现实世界,表达地表信息,通过坐标值来定义,是数学的表达方式。栅格数据用一定的空间分解力来解析地表的信息,通过灰度、色调来定义。以前矢量数据以其数据结构严密,拓扑关系完善、数学分析方便、图形输出精美、数据记录量小等诸多的优点而为广大GIS用户青睐,但随着计算机硬件的发展,制约栅格数据的硬件问题得到解决。国民经济的快速发展,对制图周期和更新周期提出了更高的要求,矢量数据复杂的内容、漫长的采集期,不便快速更新的缺点反而越来越突出。现在栅格数据和矢量数据相互相成,互相转化,使矢量图的内容相对数字地形而言,内容大为减少,缩短了矢量数据生产和更新的周期。 五、我国的空间数据库建设问题与改进策略 5.1我国现行基础空间数据库的建设过程 我国在建设地理信息系统的初期,很多人由于对数据库这一概念理解不透彻,导致把地理数据库和空间数据库弄混淆,所以在两个数据库中分别含义对方的数据信息。还有一些空间数据库在设计初期不合理,无法满足地图数据库的要求。为此,在以后的建设过程中采用直接对已有地形图进行数字化,或者在进行地形图生产的同时,利用同一数据源,采用与地形图相同的地理要素建立空间数据库。 5.2现有空间数据库建设存在的问题 由于人们对两个数据库理解的不够透彻,所以在空间数据库后期制作方面也出现了诸多问题。常常出现在同一个区域利用逻辑关系把相关的地理信息分隔开来;在数据库中记录信息不全面,设计结构不合理;在数据库中存在大量人工处理过的地理信息。这样不仅给数据空间带来很大的负担,而且还降低了提供地理信息系统的应用能力。 5.3未来空间数据库建设思路 在充分了解地图数据库和空间数据库之后,知道它们是两种完全不同的数据库。为此,在以后的建设中要集中到这两个方面:其一,对空间数据库的更新和改造。从不同角度出发,提高提取地理信息的速度,数据的精度和准确度;加强管理,对每一条信息进行有效操作;加强对信息的安全把控,防止数据泄露,并进行有效分类,统一标准。其二,对地图数据库的建立和更新。明确地图的符号化,统一标准,提高对数据的挖掘能力,加强地图制图综合能力。当这些问题都得到解决时,就证明了地理信息系统在技术方面有了很大的提高,在信息储存方面也可以及时的更新,不用在大量积攒无用的信息。 六、我国发展地理信息系统与空间数据库建设的基本途径 虽然我国在地理信息系统与空间数据库建设的发展历程中,已经存在了20多年的研究历程,但如令人欲改变停滞不前的初级阶段,仍然需要基本途径的转换和更新。第一,要在新兴的空间数据库的工作上,夯实其更新创造的基础。更新空间数据库,主要包括实现对地理信息速度和精确度的增长,自动化程度的增强,同时也要促进数据系统的人为管理。第二,对于传统通用的地图数据库,也要进行适度的改造,对于地图数据库中的系统功能的优化,主要包括三个方面:图形的符号化动作,以便解决地理信息的合理表示问题;地图制图综

3D GIS空间索引技术

3D GIS空间索引技术 3DGIS是新一代GIS技术的重要分支,是进行全方位、多层次、多要素时空分析的基础,开发结构简单、功能完善的真3DGIS软件是当前GIS研究人员的重要目标。3DGIS需要管理大量的三维空间对象,且常常需要根据空间位置对这些对象进行查询、检索和显示操作。为了处理这类空间操作,传统的关系数据库搜索方法需要花费大量的磁盘访问时间和空间运算时间。为了提高检索效率,传统的关系数据库一般都建立一系列的索引机制,如B+树等。目前常用的索引机制多是一维索引,无法有效处理3DGIS空间数据库中的三维空间地理实体。因此,必须为3DGIS空间数据库建立专门的索引机制——空间索引。 空间索引是指根据空间要素的地理位置、形状或空间对象之间的某种空间关系,按照一定规律排列的数据结构,它介于空间操作算法和空间对象之间,筛选、排除与特定的空间操作无关的空间对象。空间索引机制是快速、高效地查询、检索和显示地理空间数据的基础,其性能优劣直接影响GIS空间数据库的性能,关系到3DGIS软件系统的整体运行状况。 一、三维空间索引简介 3DGIS是2DGIS在三维空间内的延展,是布满整个三维空间内的GIS,它与2DGIS的差异主要体现在空间位置的确定、空间拓扑关系的描述与空间分析的延展方向上。3DGIS将三维空间坐标(x,y,z)作为独立的参数来构建空间实体对象模型,能够实现空间实体的真三维可视化,以立体造型来展现空间地理现象,它不仅能够表达空间实体之间的平面关系,还能够表达其垂向关系,在此基础上进行复杂的三维空间分析与操作。 在GIS由二维扩充到三维后,其处理的空间对象也由二维空间中的“点、线、面”扩充到三维空间中的“点、线、面、体”。2DGIS对平面空间的“有限-互斥-完整”剖分是基于面的划分,而3DGIS对三维空间的“有限-互斥-完整”剖分则是基于体的划分。在3DGIS 空间数据库中,空间实体的表达形式复杂,各种空间操作不仅计算量大,而且多具有面向邻域的特点。因此,在3DGIS中,由于空间维数的增加和空间实体关系复杂度的提高而导致三维空间数据的海量性。海量数据的存储与管理需要更加高效的空间数据结构和空间索引机制。目前成熟的空间索引算法多集中在二维空间索引上,如网格索引、四叉树索引等,而对3DGIS的空间索引问题研究较少。对低维空间数据而言,二维空间索引的索引效率较高,并且多数可以进行扩展以支持高维数据集。但应用实践显示,仅仅简单地将二维空间索引维数增加到三维,其效率并不高,且很多索引结构都是针对特定空间查询操作而设计的,不具有通用性。因此,需要研究3DGIS所使用的空间索引技术。 设计3DGIS空间索引面临的主要困难是:三维空间实体的空间关系比较复杂,有时甚至呈一种相对无序的状态。从本质上看,3DGIS对空间索引的要求与2DGIS基本类似,但在数据采集、数据库维护、数据操作、界面设计等方面要比2DGIS复杂得多。目前的三维空间索引大多是从二维空间索引的基础上发展而来的。与二维空间索引相似,三维空间索引方法也是基于空间数据的层次化聚类原则,结构上类似于早期用于数据检索的B+树:数据矢量存储在数据节点,空间位置邻近的矢量尽可能存储于同一节点。数据节点之间以层次化目录结构来组织,每一个目录节点都指向下一级的一个子树。 目前,索引结构大都采用平衡树的概念,即从根节点到所有数据节点的访问长度(索引高度)相同(但在插入和删除操作后可能会有改变),在树的形状上表现为高度一致性。从任意节点到数据节点的访问长度称为节点的级,数据节点对应第0级。 二、空间索引结构分类 根据空间索引结构的演化过程,空间索引方法可分为4大类,即基于二叉树的索引技术、基于B树的索引技术、基于Hashing的格网技术和空间目标排序法。

空间数据库技术

《空间数据库技术》教学大纲 课程编号: 课程名称:空间数据库技术 学分: 4 总学时: 72 实验学时: 36 适用专业: 地理信息系统本科 一、本课程的性质和任务 本课程的性质:是高等院校地理信息系统本科专业的必修课程。 本课程的任务:通过该课程的学习,不仅使学生熟练掌握空间数据库的基本知识和基本原理:空间信息基础、空间数据库的基本概念、空间数据结构、空间数据库模型及空间数据库设计等内容,而且为以后其他相关课程的学习打下良好的基础。 二、本课程的教学内容和基本要求 第一章绪论 第一节 GIS数据库概述 一、GIS 数据库定义 二、GIS数据库特征 三、GIS数据库作用 第二节 GIS数据库的形成与发展 一、数据库发展综述 二、GIS数据库历史发展 三、GIS数据库基础性与共享行性 第三节 GIS数据库与DBMS原理和关系模型 一、GIS数据库基本概念 二、DBMS的基本原理 三、RDBMS的基本特征 第四节本书对GIS数据库的研究特色 基本要求: 1.掌握GIS数据库的定义、特征与作用 2.了解数据库及GIS数据库的形成与发展背景和历程 3.掌握GIS数据库与DBMS原理和关系模型 第二章空间数据的表达与管理 第一节空间数据的表达 一、地理系统与地理现象 二、空间对象及其定义 三、空间对象关系和表达 第二节空间数据结构与组织 一、栅格数据模型 二、矢量数据模型 三、栅格矢量一体化数据模型 四、数字高程模型 第三节空间索引 一、格网索引 二、四叉树索引 三、R树和R+树空间索引 第四节空间数据管理 一、文件与关系数据库混合管理方式 二、纯关系型数据库管理方式 三、对象-关系数据库管理方式 四、Oracle Spatial介绍 五、遥感影像数据库管理 六、数字高程模型数据库管理

GIS空间数据库综述

GIS空间数据库文献综述 姓名:张磊 摘要:通过分析地理信息系统建设过程中空间数据库的建设内容1 综述空间数据块的划分、图层的分层设计方法、专题图层划分和数据集设计、分析空间数据库的结构,讨论了空间数据库系统建设的方法和需解决的关键技术问题。 关键字:GIS;空间数据库 引言:地理信息系统是集计算机科学、空间科学、信息科学、测绘遥感科学、环境科学等学科于一体的新兴边缘科学1GIS 从20 世纪60 年代出现以来,至今只有短短的40 多年时间,但已成为已成为多学科集成并应用于各领域的基础平台,成为地学空间信息分析的基本手段和工具。目前,地理信息系统不仅发展成为一门较为成熟的技术科学,而且已成为一门新兴产业,在测绘、地质、水利、环境检测、土地管理、城市规划、国防建设等领域发挥越来越重要的作用。目前,国际上在此领域进行深入研究并形成软件产品的有目前,国际上在该领域进行过深入研究并形成软件产品的有:ESRIArcSDE1,MapInfo Spatial Ware2以及Oracle Spatial 3,DB2 Spatial Extender4和Informix Spatial Data Blade 等。 1 . 空间数据库的设计 1.1空间数据库的设计思路 空间数据库由图形数据库和属性数据库两部分组成, 运用地理信息系统技术分别建好图形数据库和属性数据库后, 通过统一的编码来实现滑坡的图形数据库与属性数据库的无缝连接, 最终形成完整的空间数据库5。 1.2 间数据库的主要内容 每个GIS 数据集都提供了对世界某一方面的空间表达,包括: 基于矢量的要素(点、线和多边形) 的有序集合; 诸如数字高程模型和影像的栅格数据集; 网络; 地形和其他地表; 测量数据集; 其他类型数据,诸如地址、地名和制图信息; 描述性的属性。 除了地理表现形式以外,地理数据集还包括传统的描述地理对象的属性表1 许多表和空间对象之间可以通过它们所共有的字段(也常称为“关键字”) 相互关联1 就像它们在传统数据库应用中一样,这些以表的形式存在的信息集和信息关系在GIS 数据模型中扮演着非常关键的角色。 1.3 空间数据表现形式 1.3.1空间关系:拓扑和网络 空间关系,比如拓扑和网络,也是一个GIS 数据库的重要部分1 使用拓扑是为了管理要素间的共同边界、定义和维护数据的一致性法则,以及支持拓扑查询和漫游 1胡金星.空间数据库实现及其集成技术研究[J].计算机应用研究,2003,3:12-15. 2Andrew S Tanenbaum,Albert S.Woodhull :Operating SystemDesign and Implementation[Z]. 3Forta B, Fonte P, Brewer G.Windows2000 开发人员指南[M].杜大鹏,译.北京: 中国水利水电出版 社,2001.144 ,428. 4David J Kruglinski.Visual C++6. 0 技术内幕[M].4 版.希望图书创作室.北京:北京希望电子出版 社.209-426. 5 兰恒星,吴法权,周成虎,等.基于GIS 的滑坡空间数据库研究以云南小江流域为例[ J].中国地质灾害与防治学报, 2002, 13( 4):10-16.

基于空间数据库的几种常用空间索引技术研究

Geomatics Square NO.6 2011 (Total 113) 科技交流 基于空间数据库的几种常用空间索引技术研究 白航 (广东省国土资源测绘院,广州510500) 摘要:空间数据库是地理信息系统(GIS)的基础和核心,空间索引技术通过对存储介质上数据位置信息的描述来提高数据查询、检索及获取效率;其好坏直接影响空间数据库系统的可用性和可扩展性。本文介绍了几种常见的空间数据库索引技术:简单格网空间索引、K-D 树空间索引、R 树空间索引、四叉树空间索引等;系统总结了空间数据库索引技术的研究进展,探讨了其发展前景和存在问题。 关键词:空间数据库;空间索引;GIS 1.引言 空间数据库技术是随着GIS (地理信息系统)的发展而兴起的一门新技术,复杂的地理环境和海量、多维、结构复杂的空间数据导致了基于空间数据库查询、检索及空间计算的开销一般要比关系数据库大的多,特别是查询语句中条件谓词包含一些对空间数据操作或连接的一些函数,这些函数的计算开销远比数值计算或字符串比较等要大。若使用传统的关系型数据库管理系统(DBMS)来管理空间数据,其存在固有缺陷,用顺序扫描的方法查询的效率非常低。因此为了提高查询效率,采用空间索引技术十分必要。 2.空间数据库索引技术 空间数据用来表示空间物体的位置、形状、大小和分布特征等方面信息,适用于描述二维、三维或多维分布的区域现象。空间数据库是计算机物理存储介质上存储的地理空间数据的总和。数据库的索引机制可以用来快速访问某条特定查询所请求的数据,而无需遍历整个数据库。传统的关系数据库为了提高检索效率,一般都会建立一系列的索引机制,如B 树等,但这些都是一维索引,无法处理空间数据库中的二维和多维的 空间数据。 空间数据库索引技术是通过对存储在介质上的数据位置信息的描述,来提高空间数据库的查询性能和数据获取效率,索引技术的好坏直接影响到空间数据库系统的成败。空间数据索引作为一种辅助性的空间数据结构,介于空间操作算法和地理对象之间,通过筛选、排除大量与特定空间操作无关的地理对象,缩小了空间数据的操作范围,从而提高空间操作的速度和效率。 3.几种常见的空间索引技术 3.1简单格网空间索引 格网空间索引的原理简单,即把目标空间实体集合所在的空间范围划分成一系列大小相同的格。如图3-1所示,每一个格相当于一个桶(bucket ),记录落入该格内的空间实体的编号。基于格网索引的查找思路也较简单,在数据分布较均匀的情况下,查询效率较高。但格网的大小直接影响了索引表的大小,格网太小,索引表会急剧膨胀,维护索引表本身的花费增加,查询效率随之下降;反之,落在一个格内的空间实体可能会过多;因此格的大小严重制约着查询效率的提高。 8

面向空间数据库建设的插件式开发与应用_宋碧波

收稿日期:2014-09-19。项目来源:矿山空间信息技术国家测绘地理信息局重点实验室开放基金资助项目(KLM201411)。 面向空间数据库建设的插件式开发与应用 宋碧波1,张立朝1,石?晶1,郭秀丽1 (1.河南省基础地理信息中心,河南 郑州 450000) 摘?要:针对传统基础地理信息数据库建设过程中工作效率低下、数据质量不易控制等问题,提出数据库建设的插件式开发方式。通过采用ArcGIS Add-In 桌面定制开发技术,实现了数据格式批量转换、智能编辑和专项质检等功能,利用已有成熟商业软件的功能接口,有效避免功能的重复开发。研究成果对实际生产过程中的批量入库和质量控制起到重要的作用。关键词:ArcGIS Add-In ;数据库建设;插件式开发 中图分类号:P208 文献标志码:B 文章编号:1672-4623(2015)05-0086-03 国家测绘地理信息局于2013年在全国范围内实施1∶10 000数据库整合升级项目[1],在对DLG 数据建库的过程中,主要涉及坐标转换、格式转换、分类代码转换、要素编辑、属性项编辑、数据结构重组等一系列数据编辑、转换与质检工作。常规作业方式主要采用手工处理,从而导致数据量大、效率低、数据结构不统一、数据质量难以控制等问题[2]。采用程序建库的方式能够有效解决上述问题。借助程序读入数据可有效避免手工入库效率低下的问题。然而,目前采用程序入库方式主要基于组件式开发,不仅开发周期长,并且不能有效利用已有程序的接口,从而造成已有程序功能的浪费,重复开发的现象普遍存在[3]。 鉴于上述情况,本文提出一种地理信息数据库建设的插件式开发方式。采用ArcGIS Add-In 桌面扩展功能开发,实现数据格式转换、编辑、质量检查等功能,解决数据库建设中效率低下、结构不统一、质量难以控制等问题。 1?ArcGIS?DeskTop?Add-In 早期ArcGIS(8.0之前版本)通过使用ArcInfo Workstation 提供的宏语言AML 来进行单纯的二次开发,ArcGIS10.1及以后版本中不再支持Workstation 环境。基于ArcObject 组件进行C/S 开发主要分为基于ArcGIS Desktop 进行自定义应用扩展和利用ArcGIS Engine 建立自己的应用等。ArcGIS Desktop 桌面应用扩展开发分为客户定制开发、VBA 开发和使用编程语言进行嵌入式开发。客户定制开发只需对已有工具进行重新组合即可;基于VBA 开发可以实现大部分功能的定制,ArcGIS10.0以后版本中将不再包含该模块;基于ArcObject 的开发方式,利用支持COM 的 编程语言进行系统功能开发,通过对编译后的DLL 进行注册,从而将该功能添加到系统中。另外,为了满足用户在数据批处理及功能定制方面的需求,ArcGIS ToolBox 提供了模型制作、编写脚本工具等方式,通过对已有工具进行重组合实现数据的流程化处理,或利用Python 语言编写脚本工具实现数据的批处理,这从一定程度上减少了用户处理数据的负担。 ArcGIS Add-In 是ArcGIS 10.0以后提供的一种全新的桌面定制开发方式,它能够根据用户需求快速扩展桌面功能,与VBA、Engine 等开发方式相比具有易创建、易共享、更安全、易安装管理等突出特点[4]。在ArcGIS Desktop 原有功能基础上根据实际需求进行特殊功能的定制开发,扩展桌面上现有功能,最大程度满足用户的操作需求。基于Add-In 的开发模式使程序开发周期大大缩短,能够直接享用已有功能,并且使界面交互功能的开发更加简单,开发过程、呈现形式更加灵活。考虑到Add-In 的以上优势及实际生产任务在时间上的紧迫性,最终采用该方法对ArcMap 桌面功能进行扩展以解决实际生产问题。 2?总体设计与功能实现 1∶10 000基础地理信息数据库建库项目中存在大量数据的格式转换、坐标转换、投影信息编辑、要素几何及属性信息编辑、几何及属性精度控制、图层结构与拓扑关系检查等工作,是项目实施过程中的主要工作内容,占用时间较多。以上归纳起来可以分为数据转换、数据编辑、质量检查3类。2.1?数据转换 数据转换主要包括常用数据格式间的转换和同一椭球基准下坐标系统间的转换。不同数据采集系统间或同一软件系统中都涉及到数据存储格式转换的问

《空间数据库索引建立》实验报告

《空间数据库索引建立》实验报告 张占阳 (长安大学地测学院地理信息系统,陕西西安710054) 一、实验课时和类型: 学时:8 实验类型:综合性 二、实验目的: 1.认识空间数据库中数据的存放方式或存储结构; 2.掌握空间数据库的格网索引、标题索引的建立方法; 3.理解空间索引的功能和意义; 4.加强学生面向对象程序设计的能力。 三、适用专业: 地理信息系统专业 四、采用教材: 教材:《计算机地图制图》艾自兴,龙毅编著武汉大学出版社参考书:《地图学》祝国瑞编著武汉大学出版社五、仪器与工具: P3以上配置计算机; VC++工具软件; 实验地图数据。 六、实验原理与内容: 本次实验为综合性实验,涉及《数字地图制图原理》、《计算机地图制图原理》、《地图数据库》等几门课程中所讲的内容。

七、实验数据说明 1、地图区域:武汉市 文件名:武汉实习数据.usr 2、分类代码: 代码名称 30000 控制点 10000 图廓点 10001 铁路 10003 汽渡虚线 10004 主要道路 20001 码头 20002 铁路中转站 20003 河流、湖泊 20004 居民地 3、代码说明: 分类代码第一个字符为1,表示线目标;分类代码第二个字符为2,表示面目标。 4、控制点顺序: 第一点:左上角第二点:右上角 第三点:右下角第四点:左下角 控制点的理论值(人为规定x,y): 第一点:12.50 37.40

第二点:62.50 37.40 第三点:62.50 82.40 采用仿射变换方法。 主要实验内容: 1.读取数据 2.仿射变换 3.绘图显示 4.建立定位索引——格网索引 5.建立定性索引——标题索引 6.将已建立的格网索引用于目标拾取功能的实现 7.运用已建立的标题索引实现对象的属性查询 八、实验步骤: 第一;建立一个MapOfWuhan (MFC)工程,参数缺省。 第二;建立地图三要素:点、线、面。点类包括对应点的X,Y坐标;线类包括线号(Xcode),线分类代码(Xflcode)以及组成线的点号数组(m_array);面类包括面号(Mcode),面分类代码(Mflcode)以及组成面的点号数组(m_array)。 第三;在读取数据时,要设计存储结构。在Doc中要建立点类数组Array_dian,线类数组Array_xian,面类数组Array_mian,分别存放对应的点线面类目标。一共有655组数据,读取的时候每组中的X,Y 坐标存放到预先定义的点类对象中,若每组的分类代码为线类目标的分类代码,则把相应的线的分类代码存放到事先定义的线类对象的

空间数据库的发展与应用

空间数据库结课报告—空间数据库的发展与应用学号: 班级序号: 专业: 姓名: 指导老师: 中国地质大学(武汉)信息工程学院 2013年1月

目录 一、前言 (3) 二、空间数据库的简介及特征 (3) 2.1空间数据库简介 (3) 2.2空间数据库的特征 (3) 2.2.1空间数据库的完备性 (3) 2.2.2空间查询的执行效率 (3) 2.2.3空间数据的物理特征 (4) 三、空间数据库管理系统模式 (4) 四、空间数据库的应用模式 (4) 4.1文件与关系数据库混合管理系统 (4) 4.2全关系型空间数据库管理系统 (5) 4.3对象—关系数据库管理系统 (6) 4.4面向对象空间数据库管理系统 (6) 4.5面向对象的矢栅一体化空间数据库管理系统 (6) 五、空间数据库的实际应用.......................................................................................... .7 5.1空间数据库实际应用的必要性 (7) 5.2空间数据库的具体应用 (7) 5.2.1实例1—石油地质空间数据库 (7) 5.2.2实例2—城市规划图 (9) 六、结束语 (10) 参考文献 (11)

空间数据库的发展与应用 XXX (中国地质大学(武汉)信息工程学院湖北武汉 430074) 摘要:在GIS的基础上,鉴于实际需求下,空间数据库应运而生,本文从空间数据库的简单介绍开始,主要概述了空间数据库的发展、特征、应用类型及其在发展中的一些实际应用。在通过对文献的阅读它的实际作用和空间数据库管理系统模式的概述,对空间数据库从三方面有了进一步的了解,最后列出空间数据库在实际应用中的具体案例。 关键词:空间数据库;GIS;特征;模式;类型;应用。 一、前言 地理信息系统( Geographic Informa tion System ,GIS)融合了信息学、地理学、测绘学、城市科学等一系列科学技术,是一门典型的边缘学科。经过40余年的发展,GIS 经历了从最早期简单的机助制图,到现在与 卫星遥感技术相结合的过程,已经发展成为 一项非常成熟的应用技术,活跃于生产和生 活的各个部门。但是,GIS 的广泛应用和深 入发展, 也给 GIS 数据库带来了数据量激 增的问题,而且传统GIS中空间数据与属性数据是分别存储的,即空间数据(图形数据) 以文件格式存放,非空间数据(属性数据)则 存放在关系数据库中,形成文件 + 关系数 据库的二元存储模式。这样的存储方式在数据安全和数据共享方面都存在着不少缺陷。基于这种情况,GIS自身的数据存储能力显 然已经不能完全满足实际需求,需要借助功 能更加强大的外部数据库来存储和处理海 量数据。空间数据库正是在这一背景下应运而生, 并应用到了 GIS中。 二、空间数据库的简介及 特征。 2.1空间数据库简介 空间信息是指与位置(特别是地理位置)有关的信息,它在信息中占有相当大的比例(曾有统计可达 80%)然而,空间信息又有其特殊的一面,它具有诸如数据量巨大、结构复杂多样操作是计算密集型的具有自相关性等特性随着IT技术的迅速发展,以GIS 为代表的空间信息技术在各领域得到了应用,同时遥感等空间信息获取技术不断进步,现代社会对位置服务和分析决策的需要也日益迫切,因此深入研究和掌握空间信息技术的理论与方法的重要性也日益凸显出来空间数据库是近年的热点研究领域,是一门前沿的交叉学科其研究成果(如空间多维索引)开始应用于许多不同领域正是已有应用的需求推动了空间数据库管理系统的研究,这些应用包括地理信息系统(geographical information system ,GIS)和计算机辅助设计(computer-aided design ,CAD),以及诸如多媒体信息系统数据仓库等近年来,许多计算机应用领域通过扩充数据库管理系统的功能来支持与空间相关的数据空间数据库管理系统(spatial database management system ,SDBMS)研究是找到有效处理空间数据的模型和算法的重要步骤。 2.2空间数据库的特征 2.2.1空间数据的完整性 所谓完整性,就是数据的正确性和一致性,在关系型数据库中,有实体完整性参照完整性用户自定义完整性;在空间数据库中,语义层面的空间数据的正确性和一致性,就很难界定,它要比关系型属性数据复杂得多。打个比方一条道路横跨一条河流,必然经过一座桥,而如果不经过,就必然违背了空间数据的正确性,也就是说不完整这只是一个很简单的例子,类似于这样的空间语义关系,

空间数据多级索引结构的算法实现和分析

《空间数据组织与分析》 结课论文 题目:多级空间索引算法分析 学院:研究生学院 专业:大地测量学与测量工程 班级:硕研12级3班 姓名:张鼎凯 学号:2012020344 日期:2012年12月05日

摘要:空间数据库的索引是提高空间数据库存储效率和空间检索性能的关键技术。介绍了空间数据库中建立索引的常用技术,给出了一种多级空间索引,详细讨论了该索引的建立算法以及应用该索引的检索算法,并进行了算法分析。 关键词:计算机软件;间数据库;空间索引;空间检索;算法分析 1 空间索引技术简介 空间索引是指依据空间对象的位置和形状或空间对象之间的某种空间关系按一定的顺序排列的一种数据结构,其中包含空间对象的概要信息,如对象的标识、外接矩形及指向空间对象实体的指针。作为一种辅助性的空间数据结构,空间索引介于空间操作算法和空间对象之间,它通过筛选作用,大量与特定空间操作无关的空间对象被排除,从而提高空间操作的速度和效率。空间数据一般是是多维的,在此主要介绍二维空间数据的索引。近年来,国外学者提出应用空间基数分区对空间数据进行管理,已得出了几种空间数据索引结构。例如Robinson提出的K-D-B 树[2],Guttman 提出R 树结构[3],Freeston 提出的BANG 文件[4],Beckmann 提出的R*树结构[5]等。国内则学者提出了QR-树[6],网格索引[7][8]等索引结构,并进行了有关索引结构的性能分析和查询优化研究[8][9]。众多的索引结构可以说各有优缺点。总的来说,可分为以四叉树为代表的网格文件结构和以R 树及其变种为代表的动态索引技术。 1.1四叉树结构 四叉树索引是栅格文件索引技术的代表。栅格文件索引技术的基本思想是将一张地图规则地划分成多个互不相交的栅格,且要求所有栅格覆盖全地图,然后再利用栅格对地图上的空间对象进行索引。如K-D树、K-D-B 树、四叉树、八叉树等均基于此思想。我们在此主要介绍一下四叉树空间索引技术。四叉树空间索引是将一张地图逐步四等分,且依次编号,如图1(a)所示,其层次由用户依需要而定。划分的结果可生成如图1(b)的四叉树结构。从此结构中可确定被索引类中每个对象实例的被索引属性值属于那一个最小范围块,并将其ID 加到该最小范围块所带的链表中。查询时根据用户关心的区域,选中区域所在最小范围块中的对象。四叉树的查询在最坏情况下效率较低,而且四叉树的动态性较差。建立索引后,如果又扩大地图范围增加新对象时,必须重新建立四叉树索引,因而缺乏灵活性。

数据库索引的作用及实例

1.1.索引作用 2.在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的 快速定位技术,能够大大提高查询效率。特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万倍。 3. 4.例如,有3个未索引的表t1、t2、t3,分别只包含列c1、c2、c3,每 个表分别含有1000行数据组成,指为1~1000的数值,查找对应值相等行的查询如下所示。 5. 6.SELECT c1,c2,c3 FROM t1,t2,t3 WHERE c1=c2 AND c1=c3 7. 8.此查询结果应该为1000行,每行包含3个相等的值。在无索引的情况 下处理此查询,必须寻找3个表所有的组合,以便得出与WHERE子句相配的那些行。而可能的组合数目为1000×1000×1000(十亿),显然查询将会非常慢。 9. 10. 如果对每个表进行索引,就能极大地加速查询进程。利用索引的查询 处理如下。 11. 12.(1)从表t1中选择第一行,查看此行所包含的数据。 13. 14.(2)使用表t2上的索引,直接定位t2中与t1的值匹配的行。类似,利 用表t3上的索引,直接定位t3中与来自t1的值匹配的行。 15. 16.(3)扫描表t1的下一行并重复前面的过程,直到遍历t1中所有的行。 17. 18. 在此情形下,仍然对表t1执行了一个完全扫描,但能够在表t2和t3 上进行索引查找直接取出这些表中的行,比未用索引时要快一百万倍。 19. 20. 利用索引,MySQL加速了WHERE子句满足条件行的搜索,而在多表连 接查询时,在执行连接时加快了与其他表中的行匹配的速度。 21. 22.2. 创建索引 23.在执行CREATE TABLE语句时可以创建索引,也可以单独用CREATE INDEX 或ALTER TABLE来为表增加索引。 24. 25.1.ALTER TABLE 26.ALTER TABLE用来创建普通索引、UNIQUE索引或PRIMARY KEY索引。 27. 28. 29. 30.ALTER TABLE table_name ADD INDEX index_name (column_list) 31. 32.ALTER TABLE table_name ADD UNIQUE (column_list)

空间数据库设计报告

空间数据库设计报告

一、设计思想 本次空间数据库设计是基于SQL sever2008开放的外挂式空间数据库管理系统。基于传统的关系型数据库外挂式的空间数据库系统的关键在于SDE的设计与实现,SDE在用户和异构空间数据库之间提供了一个开放的接口。用户可以通过SDE服务来实现对空间数据的读取、插入、更新和删除的基本操作,还可以基于SDE实现对空间数据的分析功能,如拓扑关系的查询、缓冲区分析、叠加分析、、合并和切分等。SDE同时提供了链接DBMS数据库的接口,与数据库的操作都是在这个上面进行交互的。 1.1 数据的存储 1.1.1 几何数据的存储 把GIS数据放在RDBMS中,但是一般的RDBMS都没有提供GIS的数据类型(如点、线、多边形、以及这些feature之间的拓扑关系和投影坐标等相关信息),RDBMS只提供了少量的数据类型支持:int,float,double,Blob,Long ,char等,一般都是数字,字符串和二进制数据几种。并且RDBMS不仅没有提供对GIS数据类型的存储,也没有提供对这些基础类型的操作(如:判断包含关系,相邻、相交、求差、距离、最短路径等)。在本次数据库设计中,成功的完成了对点线面的数据的存储和相关的读取、插入、更新和删除以及可视化的显示的功能。此处的存储是基于SQLsever2008进行的,具体的存储结构如下表所示: 其中Point表中包含Point的空间信息,即空间的点的x,y坐标。由于当个点的只有相当于独立地物才会有相关的属性信息,本次在操作的时候并没有在存储的表中添加相应的属性信息。 一条线是由很多个小线段的组成的,因此在存储的时候,每个边都有一个独立的ID,每条边是由起点和终点链接起来的,因此在在这个表中只需要存储相应的点的ID即可,一般的线都是具有相关的属性信息的,故在本次设计中添加了线的属性信息,咋通过SDE对空间数据查询的时候便可以很方便的看到边的属性。

相关文档
最新文档