10.7.6 空间数据库
空间数据库是随着地理信息系统(GIS)发展起来的一种新型数据库系统,它是地理信息系统的核心。空间数据库是描述、存储以及处理空间数据及其属性数据的数据库系统。所谓空间数据是指与空间位置和空间关系相联系的数据,包括多维的点、线、矩形、多边形、立方体和其他的几何对象。一个空间数据对象占据着空间的一个特定区域,称为空间范围,它是用其位置和边界来刻画的。涉及空间数据的应用有:天文、地理信息系统、城市规划、管道和网络系统、交通图、大规模集成电路版面设计、多媒体数据库、分子结构图、医学图像等。因此研究空间数据库具有重要的意义。
空间数据是空间数据库管理的对象,空间数据具有一些特殊的性质,正是这些特征,决定了空间数据库与其他数据库的不同之处。空间数据有如下一些特征:
(1)数据量大,结构复杂,数据联系多样化
空间对象的类型比较多,可以是点、线等基本对象,也可以是由这些基本对象经过组合甚至嵌套而成的地形图等复杂对象。无论是基本对象还是复杂对象对于其存储都需要大量的空间。同时空间对象相互之间的关系也是多样的。
(2)查询过程复杂
对于空间数据的查询一般是按照其对象的空间特征和与其他空间数据的关系来进行查询的。由于空间对象常常是不规则的,对其描述比较困难,同时空间对象的关系比较复杂,所以对于空间数据的查询比较困难。
(3)空间对象难以定义次序
对于一个空间例如平面区域集合,其中的元素形状大小不同,彼此之间的关系复杂,要为其建立空间次序很困难。因此原来的一些建立在一维数据排序基础上的算法难以用于空间数据库。
为了更好地管理和使用空间数据就需要有与这些空间数据相适应的数据库系统。对于一个空间数据库最主要的应该包括空间数据模型、空间数据查询语言和空间数据库的体系结构。
一、空间数据模型
人们通常以GIS为应用背景介绍基本的空间数据类型。这里的介绍主要是以二维空间数据类型为主,但完全可以推广到三维以上的情形。空间数据类型由点、线、区域3种基本数据类型组成,以此为基础,还可以导出划分、网络等空间数据类型。
对于目前比较常见的空间数据模型,主要有栅格模型、矢量模型、面向对象数据模型和约束数据模型等几种。下面主要介绍栅格模型和矢量模型。
(1)栅格模型
栅格数据模型就是将平面划分为网格,一个网格代表一个像元,每个像元由其行、列号来唯一确定。然后把这些像元和一些代码相关联,表示这些像元的属性。由于把平面划分为行、列,这种形式对于计算机的处理是非常方便的。但是由于栅格结构所表示的数据是不连续的,是经过量化的离散值,这样,在使用栅格数据计算面积、长度、形状等空间指标时,则有可能造成较大的计算误差。
(2)矢量模型
矢量数据模型是通过记录坐标的形式,用点、线、面等基本要素尽可能精确地来表示各种地理实体。因为矢量模型直接以坐标精确地记录各个位置,因此矢量数据表示的坐标空间是连续的,可以精确定义地理实体的任意位置、长度、面积等。另外,该结构还可以对复杂数据以最小的数据冗余进行存储,相对于栅格结构来说,它还具有数据精度高、存储空间小等特点,是一种高效的图形数据结构。
二、空间查询与查询语言
对于空间数据库最常用的依然是对数据的查询,下面介绍空间查询和空间查询语言。对于空间查询主要包括如下几种:
(1)空间区域查询:例如查询某个区域内有多少城市或者湖泊等。基于区域数据,空间区域查询可以返回覆盖特定范围的所有区域或者被包含在一个特定范围内的所有区域。
(2)最邻近查询:例如“找出距离成都最近的5个城市”,通常我们希望答案按照与成都的距离来进行排序。
(3)空间连接查询:例如“找出成都附近的城市”或者“找出相距300km以内的湖泊”,但是这样的查询比较麻烦,开销较大。
在空间数据库系统中,一般采用和SQL风格类似的查询语言,可以借助SQL语言扩充空间数据类型及其操作来实现。由于这些扩充与应用有关,目前还未形成标准。但是对于设计空间数据库语言应该遵循下面3个准则:① 保留SQL标准;② 在较高的应用层对空间数据进行操作,尽量屏蔽掉空间数据的细节;③ 空间操作要与关系结合在一起。
三、空间数据库体系结构
可以以文件系统、RDBMS、OODBMS或ORDBMS为基础建立空间数据库的体系结构。早期的空间数据库基本上都是在文件系统的基础上建立的,对于这种系统在此不做详细的介绍。而以OODBMS或ORDBMS为基础的空间数据库刚刚开始研究,还有很多技术问题需要解决,因此我们主要介绍以RDBMS为基础的空间数据库系统结构。
(1)分层结构:这种结构是在RDBMS与应用程序层之间增加一层软件,利用RDBMS支持的数据类型来实现空间数据类型及其操作。这种结构可以从充分利用RDBMS中的功能,保证空间数据和属性数据的完整性、一致性和数据备份与恢复的一致性,完全利用数据库的安全机制保证数据的安全性,能够实现多用户并发访问控制。但是这种结构只能利用已有的功能对空间数据做有限的支持,空间数据库存储结构和索引很难实现。
(2)双重结构:为了克服分层结构的缺点,可以与RDBMS平行的增加一个专门管理空间数据的子系统。对于非空间属性由RDBMS按照普通数据库形式管理,而对于空间属性由空间数据子系统来管理。两者之间用逻辑指针(即空间属性标识符)相连。但是从用户的角度看它们是一个不可分割的整体。如图10-22所示,前两个属性是普通属性,第三个属性是该地区的地图,是空间属性。上层接口在插入这个元组时,可将第三属性用该地区地图标识代替,由RDBMS管理此元组,而该地区地图存放于空间数据库子系统中。当查看此元组时,由上层接口完成这两部分的连接。双重结构比起分层结构前进了一步。但是毕竟多了一个分解和合成的步骤,增加了开销。
图10-22
参 考 文 献
[1] 萨师宣,王珊. 数据库系统概论. 第三版. 北京:高等教育出版社,2000
[2] 刘云生. 现代数据库技术. 北京:国防工业出版社,2001
[3] 苗雪兰,刘瑞新,宋会群. 数据库技术及其应用.北京:机械工业出版社,2005
[4] 刘方鑫. 数据库原理与技术. 北京:电子工业出版社,2000
[5] 陈志泊,李冬梅,王春铃. 数据库原理及应用教程. 北京:人民邮电出版社,2002
[6] 徐洁磐.面向对象数据库系统及其应用.北京:科学出版社,2003
[7] (美)Elsam ri R, (美)Navathe S B. 数据库系统基础. 第三版. 邵佩英译. 北京:人民邮电出版社,2001
[8] 李俊山,孙满囤,韩先锋,李艳铃. 数据库系统原理与设计. 西安:西安交通大学出版社,2003
[9] 徐洁磐. 现代数据库系统教程. 北京:北京希望电子出版社,2002
[10] 汤庸. 高级数据库技术. 北京:高等教育出版社,2005
[11] 李明,叶晓俊.对象关系数据库管理体系研究. 计算机科学,2003,30(8)
[12] 信息管理系列编委会.分布式数据库.北京:中国人民大学出版社,2001
[13] 陶树平,李华伦.数据库系统原理与应用.北京:科学出版社,2005
[14] 邵佩英.分布式数据库系统及其应用. 第二版.北京:科学出版社,2005
[15] 苗雪兰,刘瑞新,宋会群.数据库系统原理及其应用. 第二版.北京:机械工业出版社,2004
[16] 王鹏,董群.数据库技术及其应用.北京:人民邮电出版社,2000
[17] 张龙祥,黄正瑞,龙军.数据库原理与设计.北京:人民邮电出版社,2002
[18](美)Connolly T.数据库系统-设计实现与管理. 第三版.宁红译.北京:电子工业出版社,2004
[19] 武森.数据仓库与数据挖掘.北京:冶金工业出版社,2003
[20] 林宇.数据仓库原理与实践.北京:人民邮电出版社,2003
[21] 陈京民.数据仓库原理、设计与应用.北京:中国水利水电出版社,2004
[22] 石丽,李坚.数据仓库与决策支持.北京:国防工业出版社,2003
[23] 彭木根.数据仓库技术与实现.北京:电子工业出版社,2002
[24] 张维明.数据仓库原理与应用.北京:电子工业出版社,2002
[25] 王珊,李盛恩.数据库基础与应用.北京:人民邮电出版社,2002
[26] 夏火松.数据仓库与数据挖掘技术.北京:科学出版社,2004
[27] 康晓东. 基于数据仓库的数据挖掘技术. 北京: 机械工业出版社, 2004
[28] 徐洁磐.数据仓库与决策支持系统.北京:科学出版社,2005
[29] 林杰斌,刘明德,陈湘.数据挖掘与OLAP理论与事务.北京:清华大学出版社,2002
[30] 邵峰晶.数据挖掘原理与算法.北京:中国水利水电出版社,2003
[31] 周志逵,江涛.数据库理论与新技术.北京:北京理工大学出版社,2001
[32] 汤庸,彭重嘉,区海翔.多媒体数据库与网络应用.北京:人民邮电出版社,2000
[33] 王娣.多媒体数据库技术综述. 情报杂志,2001,(11)
[34] 张志檩.实时数据库原理及应用. 北京:中国石化出版社,2001
[35] 王琳,喻成,李昌一.实时数据库的现状与发展. 河北理工学院学报,2003,25(4)
[36] 何新贵.特种数据库技术.北京:科学出版社,2000
[37] 汤庸.时态数据库导论.北京:北京大学出版社,2004
[38] 梁雯.主动数据库及其研究现状. 情报理论与实践,2001,2
[39] 杨泽雪,韩中元,魏兴,郭红微.主动数据库系统的研究. 哈尔滨师范大学自然科学学报,2005,21 (2)
[40] 任美睿,朱春晓,郭龙江,张真子.空间数据库系统的数据模型、存储方法和实现策略. 测绘工程,2005,14(1)
[41] 龚健雅.空间数据库管理系统的概念及发展趋势. 测绘科学,2001,26(3)
[42] 陈红丽.浅谈空间数据库技术. 科技广场,2005,2
[43] 刘宇,朱仲英,施颂椒.空间数据库的数据模型和查询语言. 微型电脑应用,2000,16(4)
[44] 毕利.主动数据库的模型及实现途径. 计算机工程,2000,26(9)
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。