空间数据库学习报告
国内外空间数据库技术现状、存在问题与发 展趋势 学号20151389012姓名苏逸 摘要随着计算机技术日益成熟,以及“数字城市”理念逐步深入人心,空间数 据库技术在 20 世纪 60 年代后迅速发展。 本文论述了国内外空间数据库技术的发 展现状,罗列了一些尚存问题,展望了空间数据库的发展方向,希望能对笔者的 空间数据库课程的学习打下认知基石。 关键词关键词空间数据库技术 一、国内外空间数据库现状 1.1 空间数据库管理模式发展历程空间数据库管理模式发展历程 管理模式经历了纯文件模式、 文件结合关系型数据库的管理模式、 全关系型数据库管理 模式和面向对象的数据库管理模式四个阶段。 1.2 当下空间数据库主流类型当下空间数据库主流类型 1.2.1 混合模型数据库 所谓混合模型数据库其基本思想是将地理空间信息按照专题特性进行分层,每个图层由 一类相同或相似的空间实体构成,如在一个城市中,道路、 旅游景点、 大专院校等不同特性的 空间实体构成不同专题的图层,然后对这些图层进行分层存储和处理。对于图层中的每个空 间实体,其属性数据被分为两部分 空间属性和非空间属性,空间属性存储在文件系统中,非 空间属性则存储在关系数据库中,两者通过一个全局唯一的标识符进行关联。其示意图如下 图所示。 图 1 1.2.2 对象-关系型数据库 近年来,结合关系数据库和面向对象思想的对象关系数据模型渐渐成为GIS 应用中构 建数据库系统的主流技术。 由于这种技术更为逼真地模拟了现实世界中空间实体的结构和相 互关系,并且采用单一系统进行存储, 因而消除了传统混合模型的缺点, 更有利于对空间数 据进行管理和维护。 该类型数据库有如下优点 1 ①采用对象-关系数据模型的商业化数据库产品技术上已经比较成熟 ,这就使得采用对 象-关系模型构造的数据模型可以直接在一个对象-关系数据库中进行存储、管理,并且由于 采用了符合行业标准的开放式数据接口,使得数据的共享更加方便有效; ②由于采用了单独的数据库进行数据管理, 使得对空间数据进行操作更加简单和方便, 效率也大大提高; ③通过采用开放式的 SQL 平台以及大量空间操作函数的使用,能够开发出功能更加强大 的应用系统,扩展了 GIS 应用的范围[1]。 1.2 空间数据库技术现状 近些年,空间数据库技术在索引、数据更新、 多源数据获取方面获得了一些进展,以下 举出例子。 1.2.1 空间数据库索引技术[2] 1空间数据库索引技术的定义 数据索引是指在磁盘上组织数据记录的一种数据结构, 是对存储在存储介质上的数据位 置信息的描述。 它用于优化某类数据检索的操作, 是提高系统对数据获取效率的一种重要手 段。 2空间数据库索引技术分类[2] ①简单格网空间索引 格网空间索引的原理简单, 即把目标空间实体集合所在的空间范围划分成一系列大小相 同的格。基于格网索引的查找思路也较简单,在数据分布较均匀的情况下,查询效率较高。 但格网的大小直接影响了索引表的大小, 格网太小,索引表会急剧膨胀, 维护索引表本身的 花费增加,查询效率随之下降;反之,落在一个格内的空间实体可能会过多;因此格的大小 严重制约着查询效率的提高。 ②K-D 树空间索引 K-D 树是早期用于索引多维空间数据的数据结构之一。 K-D 树的每层都把空间划分为 两个部分,沿着树的根结点进行一维划分; 依次划分下一层结点, 尽量保证左右子树中的结 点数目均衡,当结点中包含的点数少于叶子结点中包含的最大点数时停止划分。为了平衡 K-D 树的深度,可结合 B 树来得到 K-D-B 树索引结构,但此类索引树对于占据一定空间范 围的空间实体而言(如线和多边形) ,构造空间索引仍然不方便。因为当使用数据库表构造 K-D 树的索引表时,树型结构的递归层次深,导致查询效率降低。 ③R 树空间索引 R 树是 B 树在多维空间上的自然扩展, 是由 Guttman 提出的最早支持多维空间存取的方 法之一。R 树是一种高度平衡树,可控制树的深度,采用对象的最小外包矩形(MBR)来近似 表示空间实体。R 树有如下几条特性1 叶结点中存储该结点对应的空间要素的MBR 和 空间要素标识;2MBR 二维上是矩形,三维上是长方体, 以此类推到高维空间;3非叶结 2 点存放其子女结点集合的整体外包络矩形和指向其子女结点的指针。 R 树是一种动态索引 结构,其查询、插入、删除可同时进行,而且不需要定期的对树结构重新组织。 R 树适合 于多维空间查询,不过由于空间数据分布的偶然性,使得各层节点 MBR 容易重叠,导致实 际执行空间查询时,会产生多个查询分支,很大程度上降低了空间查询的效率。 在最坏的情 形下,一个空间查询会退化成线性搜索。若使用外部数据库来描述 R 树,在缺乏特定的快 速物理数据块访问接口情况下,效率也会大打折扣。 ④四叉树空间索引 在基于固定网格划分的四叉树空间索引机制中,工作空间在 X、Y 方向上进行 2N 等 分,形成 2N2N 的网格,并以此建立 N 级四叉树。在四叉树中,空间要素标识记录在其 外包络矩形所覆盖的每一个叶结点中。 但当同一父亲的四个兄弟结点都要记录该空间要素标 识时,则只将该空间要素标识记录在该父亲结点上, 并按这一规则向上层推进。 层次型的树 状结构并不适合使用数据库表来直接描述, 可通过对四叉树的各层节点进行编码, 来反映四 叉树的层次结构。四叉树索引在内存中的层次型树状结构,其查询效率较高。 3空间数据库索引技术的应用[3] ①Oracle Spatial 的空间数据索引可以通过用户定义的功能和索引方式,对用户定义 的数据类型进行存储、恢复和操作,弥补了以往关系数据库管理的不足; ②IBM 空间数据刀片(Spatial DataBlade) IBM DB2 Spatial Extender提供基于网格 的三层空间索引,该索引技术是基于传统的分层B 树索引形成的; ③MySQL 空间数据扩展MySQL Spatial Extensions 用自己的 Geometry 数据类型存储 空间数据,符合和遵循 OpenGIS 中的 Geometry 模型; ④ERSI 空间数据引擎这是一种处于应用程序和数据库管理系统之间的中间件技术, 在用户和异构空间数据库之间提供了一个开放接口。 1.2.2 数据更新技术[4] 1国内外空间数据库更新技术发展动态 ①国外 美国地质调查局测绘部从 2001 年开始计划建立近实时数据更新机制, 将数据的现势性 保持在几天或数月之内。 英国军械测量局根据其实际情况, 建立了推扫式和散点式相结合的 更新机制。日本采用基于栅格的更新方法,先更新12. 5 万地形图,再用12. 5 万图更 新 1 ∶ 5 万图, 城市地区每 3 年更新一次, 郊区每 5 年更新一次, 山区每 10 年更新一次。 加拿大测绘署地形信息中心2001 年启动了一项利用 Landsat-7 影像更新 1 ∶ 5 万地形 数据的计划,每年使用 Landsat-7 影像更新 1 000 幅以上地形数据。 ②国内 我国一些经济发展较快的省、 市在建立更新机制、 利用遥感影像获取变化信息