7.4.2 空间数据的管理模式
地理数据库是一种应用于地理信息处理和分析的数据库,它管理地理数据,它要求数据库系统应具备对地理对象进行管理建模、操纵、管理和分析的功能。自从空间数据能够由计算机管理和操纵以来,空间数据管理主要经历了以下几种方式:
1.基于文件管理的方式
在基于文件管理方式中,各个地理信息系统应用程序对应各自的空间和属性数据文件,当两个GIS应用程序需要的数据有相同部分时,可以提出来作为公共数据文件(如图7-6所示)。
图7-6 文件管理方式
这种管理空间数据方式的缺点是:程序依赖于数据文件的存储结构,数据文件修改时,应用程序也随之需要改变。当多个程序共享一个数据文件时,文件的修改,需得到所有应用的许可,不能达到真正的共享。采用文件管理系统管理空间数据,数据的安全性、一致性、完整性、并发控制以及数据修复等方面都有很大欠缺,不能说是真正意义上的空间数据库管理系统。
2.文件与关系数据库混合管理系统
随着数据库技术的发展及商用DBMS的成熟,GIS也开始采用数据库技术来管理空间数据,但由于关系数据库系统主要操纵诸如二维表这样的简单对象,而商品化GIS软件大多采用了以“结点—弧段—多边形”拓扑关系为基础的数据模型,我们称这种数据模型为拓扑关系数据模型,一般DBMS无法有效支持以复杂地理实体对象为主体的GIS工程应用,因此不适于存储和管理空间数据。所以在拓扑数据模型的基础上,一些软件将空间数据和属性数据分开存放。较为常用的是文件与关系数据库混合管理模式,即文件系统管理几何图形数据,商用DBMS管理属性数据,它们之间通过目标标识码进行连接。8.0版以前的Arc/Info就是将位置坐标数据存放在文件系统中,而将拓扑属性和其他属性存放在关系数据库的表格中。
在这种管理模式中,几何图形数据与属性数据除依靠连接关键字oid进行连接外,两者几乎是独立地组织、管理和检索各自的数据。就几何图形而言,由于GIS系统采用高级语言编程,可以直接操纵数据文件,而在与属性数据的关系上,则可分为图形与属性分开处理模式和图形与属性混合处理模式。
3.全关系型空间数据库管理系统
如果空间数据采用文件方式管理,一般情况下,为了提高效率要按一定的区域划分物理存储,在分区管理时容易造成空间对象的人为分割,如按图幅分区,可能使一个房子变成两个多边形或者更多,这是采用文件方式存储空间数据的最大缺点,而采用关系数据库管理空间数据则无须考虑分区存储的问题,整个层对应一个虚拟的表,可以充分利用关系数据库的海量数据管理功能存储整层数据,确保空间数据的完整性和一致性,同时也将空间和属性一体化存储,但缺点是数据可移动性较差,因此要考虑用一定方式来弥补这种不足。由于标准RDBMS不能直接处理空间数据,在此,如果将空间数据与属性数据统一用现有的RDBMS管理,需要GIS软件商在标准DBMS顶层开发一个能容纳、管理空间数据的功能,如图7-7(a)所示。
图7-7 空间数据管理模式
4.对象-关系数据库管理系统
ESRI推出的Geodatabase数据模型是基于面向对象技术的,即在通用的关系模型数据库基础上建立空间数据库,通过空间数据引擎进行访问,这种对象-关系数据库管理模式已经在很多领域投入使用,是一种较为优越的高效的空间数据库管理模式。
在对象-关系数据库管理方式中,由DBMS软件商在RDBMS中进行扩展,使之能直接存储和管理非结构化的空间数据(图7-7(b)),如Informix和Oracle等都推出了空间数据管理的专用模块,定义了操纵点、线、面、圆等空间对象的API函数。这些函数将各种空间对象进行预先定义,用户使用时必须满足它的数据结构要求,用户不能根据GIS要求再定义。也就是说,这种模式涉及的空间对象一般不带拓扑关系,用户不能用这种模型存储拓扑数据结构。
这种扩展的空间对象管理模块主要解决空间数据的变长记录的管理,由于是由数据库软件商扩展的,效率比二进制块的管理高得多,但仍没有解决对象的嵌套问题,空间数据结构不能由用户定义,使用上受一定限制。
5.面向对象地理数据模型
GIS的各种地物对象分为点、线、面状地物以及由它们混合组成的复杂地物。每一种几何地物都可能由一些简单的几何图形元素构成。为了有效地描述复杂的事物或现象,需要在更高层次上综合利用和管理多种数据结构和数据模型,并用面向对象的方法进行统一的抽象,这就是面向对象数据模型的含义,其具体实现就是面向对象的数据结构。面向对象模型最适合于空间数据的表达和管理,它不仅支持变长记录,且支持对象的嵌套、信息的继承和聚集。
对于一个面状地物,它由边界弧段和中间面域组成,弧段又涉及结点和中间点坐标,或者说,结点的坐标传播给弧段,弧段聚集成线状地物或面状地物,简单地物聚集或联合组成复杂地物,若采用面向对象数据模型,语义将更加丰富,层次关系也更明了,可以说,面向对象数据模型是在包含RDBMS的功能基础上,增加面向对象数据模型的封装、继承和信息传播等功能。
面向对象的地理数据模型的核心是对复杂对象的模拟和操纵,它根据GIS需要,允许用户定义对象和对象的数据结构及它的操作。每个地物对象都可以通过其标识号和其属性数据联系起来,例如,在城市用地数据的模型构建上,可按照一定分类方式进行类与子类的划分,并定义各类实体的数据结构、确定各类实体的属性与操作方式(如图7-8所示)。若干个地物对象可以作为一个图层,若干个图层可以组成一个工作区。需要注意的是,在GIS中建立面向对象的数据模型时,对象的确定还没有统一的标准,但是,对象的建立应符合人们对客观世界的理解,并且要完整地表达各种地理对象,及它们之间的相互关系。
图7-8 土地利用管理的面向对象数据模型
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。