第十讲网络GIS空间数据管理主要内容1网络GIS构造模型2分布式地理信息共享形式3分布式空间数据管理技术4网络GIS中地理空间元数据管理网络地理信息系统是在Internet网络环境下的一种兼容存储、处理、分析和显示应用地理信息的计算机信息系统。国际学术界称之为WebGIS,这主要是由于大多数的客户端应用采用了协议。它的基本思想就是在互联网上提供地理信息,让用户通过浏览器和获得一个地理信息系统中的数据和功能服务。的地理信息系统相比,WebGIS具有以下4个特点:(1)更广泛的客户访问范围:客户可以同时访问多个位于不同地方的服务器上上的最新数据,而这一Internet所特有的优势大大扩展了GIS的数据管理能力,增强了对空间数据管理的时效性。(2)客户端平台独立性:无论客户端是何种操作系统,只要支持通用的Web浏览器,用户就可以访问WebGIS数据。(3)更简单的操作:要推广GIS,使GIS系统为广大的普通用户所接受,而不是仅仅局限于少数受过专业培训的专业用户,就要降低对系统的操作难度。通用的WebGIS浏览器无疑是降低操作复杂度的最好选择。(4)平衡高效的计算负载:传统的GIS大都使用文件服务器结构的处理方式,其处理能力完全依赖于客户端,效率较低。而当今一些高级的WebGIS能充分利用网络资源,将复杂的处理交由服务器执行,而对简单的操作则由客户端直接完成。这种计算模式能灵活地在服务器端和客户端之间合理分配处理任务,提高网络计算资源的利用效率。1网络GIS构造模型1.1WebGIS的B/S3层结构1.2基于中间件的B/S多层结构1.3WebGIS的互操作模型1.1WebGIS的B/S3层结构常见的WebGIS的结构体系是由数据库、应用服务器和客户端组成的3层结构体系(见下图)。WebGIS服务器GIS应用服务器WebGIS计算模型它把数据库和地理信息系统的应用逻辑分开,相对于最初的两层结构,数据库的改变对应用的影响减少了。通过HTTP协议,客户向Web服务器请求数据服务,服务器返回HTML方式书写的服务页面。按照浏览器和服务器端功能的多少,结构体系可以划分为胖客户器/瘦服务器和瘦客户器/胖服务器两种。但随着应用的复杂度增加,客户对应用服务器的访问频率增加,单一服务器和复杂的应用程序无法快速处理大量的地理信息系统服务需求。中间件技术的出现改进了传统模式的B/S体系。1.2基于中间件的B/S多层结构如果WebGIS应用是建立在分布式数据库上,那么为了增强服务器的处理能力和速度,服务器端的GIS应用也要求是分布式的。中间件技术是解决这一难题的有效途径。图1-2是一个基于中间件技术的WebGIS系统模型,用户的请求由中间件处理。GIS应用服务器不是一个进程,而是有多个中间件组成的分布式的多个进程。中间件相互调用,一个进程是另外进程的客户的同时又是别的进程的服务,调用关系比较复杂。进程所访问的地理数据库也不再是单个的数据库,可能是一个分布式的异质数据库。相互调用的GIS多层中间件请求客户端浏览器图基于中间件的WebGISB/S体系GIS应用中间件GIS应用中间件GIS应用中间件应答GIS数据库1GIS数据库2GIS数据库n目前分布式计算的中间件技术主要有CORBA,DCOM和EJB等。其中,CORBA体系是最有前途的一种,它实现了异构平台的互操作;与此对应的是,DCOM模型一统Window平台,已经成为Windows平台的市场标准;而SUN公司大力提倡的EJB体系,也在逐渐的发展。1.3WebGIS的互操作模型目前已投入使用的基础GIS和应用GIS多是基于具体的、相互独立和封闭的平台上开发出来的,它们没有统一的标准,各自采用不同的数据格式、数据存储和数据处理方法,从而无法直接进行应用系统之间的数据共享。随着现代科学技术的发展,尤其是计算机硬软件技术的迅速发展,大量信息产生并通过计算机进行处理,因此,如何让不同的系统能共享地理数据,即使数据能在不同的系统下相互操作显得非常重要。为了能使不同的GIS软件之间具有良好的互操作性,以及在异构分布数据库中共享信息,避免重复的数据输入和处理,由此便产生了开放式地理信息系统(OpenGIS)。(一)开放式地理信息系统(OGIS)及其特点OGIS是由美国开放地理信息联合会(OGC-OpenGISConsortium)制定的开放地理数据互操作规范的简称。按照定义,OGIS为软件开发者提供了一个接口框架,用户可以在一个开放信息技术环境中通过一致的计算接口访问和处理不同来源的地理数据。为了实现不同应用程序间可互操作地理数据,OGIS为这些数据规定了各种数据标准类型和在这些标准类型上所实施的操作,以及如何将这些标准数据类型组织成应用程序之间交互的地理数据;它还规定了共享地理数据操作的规范,应用程序可以通过这些规范,得知提供地理操作的服务及如何请求这些服务;或者从服务提供者的角度来看,得知一个请求是数据请求还是服务请求。OGIS的这些规范是建立在现有的和将要成为标准的分布计算平台的基础之上的,如下图所示。因此,它并不涉及如何将不同运行环境中的应用程序连接起来相互通讯的问题。为了利用以往的地理数据,保护原有投资,以及保证将来方便地引入新的管理、操纵地理数据的方法,OGIS规范也不定义如何存储地理数据和处理地理数据的方法。GIS应用软件开发能力界面规范功能接口数据模型OGIS规范和协议分布计算特性操作系统/软件环境硬件环境图GIS开发系统结构图应用层平台层OGIS层环境层应用程序之间真正意义上的地理数据共享或者互操作,不仅在于双方能理解相同的数据格式,更重要的是对这些地理数据中所包含的应用意义也有一个共同的理解,这种语义上的一致是由互操作地理数据的应用团体双方达成的。而OGIS则为这种一致的达成提供了语义表达与转换机制。OGIS将使用或生产不同应用意义地理数据的团体或应用程序划分为不同的信息团体,地理数据中保存的描述应用语义的数据将由这些信息团体来处理和转换。基于OGIS的应用程序或软件组件具有如下特点:1.互操作性OGIS提供地理数据和地理操作的标准接口,这些接口支持孤立系统和网络,以完成应用程序之间的地理数据访问和交换;分布式的客户/服务器结构的地理操作和分布式对等实体的地理操作。2.支持信息团体性具有不同的应用背景的用户可以方便地交换地理数据而不会造成语义的误解和损失。3.普适性通过OGIS定义的标准接口和协议,所有的应用程序,无论是属于哪个专业领域,都可以方便地处理地理数据。4.兼容性由于OGIS并不定义地理数据的存储格式和处理方法,因此基于OGIS的应用程序将能够与旧有的地理数据保持兼容。5.可移植性OGIS独立于软件、硬件及网络环境,因此,它不需修改便可在不同的计算机上运行。6.可扩展性硬件方面,可在不同软件、不同档次的计算机上运行,其性能和硬件平台的性能成正比;软件方面,可以随着新的地理数据类型和处理方法的发展而发展,它具有容纳新的地理数据处理技术和新的分布计算平台技术的能力。7.可伸缩性基于OGIS的应用程序通常由相对独立的软件组件构成,这些组件可以为各种计算环境重新配置,而不必考虑数据量的大小。(二)OGIS的组成部分OGIS软件框架主要由3部分组成:统一的开放式地理数据模型;统一的地理操作服务模型和实现团体间的地理数据和操作资源共享的信息团体模型。OGIS提供了一个与程序设计语言、硬件设备和网络环境无关的开放的地理数据模型(OpenGeodataModel,OGM)。在OGM中,现实世界的地理事件分为两类:实体(Entities)-占据一定空间范围的可区分的对象,例如:建筑物、河流、田地、观测站等;现象(Phenomena)-在空间中连续变化,但又不占据特定的空间,现象的值或描述只有相对于空间中的某一点才有意义,例如:温度、人口密度等。和现实世界的抽象对应,在OGIS中的基本对象是要素(Feature)和覆盖(coverage)。要素是对现实世界中实体的抽象或描述。它可以代表任何存在于时间和空间中的事物。要素通常分组来管理,称为要素集。覆盖是时间/空间范围中的一个地点到一个值(可以是任何类型)的关联。覆盖是时间/空间域到属性域的函数。覆盖通常用来表示现象。现实世界、抽象模型和OGM之间具有如下图所示的对应关系。现实世界抽象模型OGM离散的对象实体要素连续的对象现象覆盖地点、时间位置几何体现实世界、抽象模型和OGM的对应关系2.信息团体模型所谓信息团体指的是这样一个人群,他们在特定的时间内使用相同的数字化地理信息系统术语和相同的空间要素定义,即是说他们在地理抽象、要素表示和元数据方面有着相同的看法和约定。信息团体模型主要任务是解决具有统一的OGM及语义描述机制的一个信息部门内部以及具有不同OGM及语义描述的信息部门之间的数据共享问题。3.OGIS服务模型OGIS服务模型是定义地学数据服务的对象模型,由一组相互可操作的软件构件集组成,为对要素的访问提供对象管理、获取、操作、交换等服务设施。具体地说,它有以下几方面的功能:1)提供了一种方法,通过它能从OGM的数据类型构成具体的数据模型,查询数据以及将可共享的数据编制成目录。2)提供了一种机制,通过它能定义和建立信息团体以及建立它们之间的联系。3)提供了一种手段,使得能对OGM定义的数据类型,用户定义数据类型以及其它的功能进行操作。2分布式地理信息共享形式2.1原始数据下载2.2静态地图显示2.3元数据搜索2.4动态地图显示2.5数据预处理2.6基于Web的GIS查询和分析2.7能响应网络的GIS软件分布式空间数据库系统由若干个站点集合而成,这些站点又称为节点,它们通过网络连接在一起。每个节点都是一个独立的空间数据库系统,它们都拥有各自的数据库和相应的管理系统及分析工具。整个数据库在物理上存储于不同的设备上,而在逻辑上则是一个统一的数据库。在应用时,用户可以不考虑数据存储的具体物理位置,就象对集中式数据库一样来访问分布式数据库。分布式空间数据库有如下特点:1)在分布是数据库系统里不强调集中控制概念,它具有一个以全局数据库管理员为基础的分层控制结构,但是每个局部数据库管理员都具有高度的自主权。(2)数据独立性,在集中式数据库系统中,数据独立性包括两个方面:数据的逻辑独立性与数据的物理独立性,其含义是用户应用程序与数据的全局逻辑结构、数据的存储结构无关。(3)适当的数据冗余,与集中式数据库系统不同,数据冗余在分布式系统中被看作是所需要的特性。分布式地理信息服务从简单到复杂分为七种类型1原始数据下载服务器用于传输文件,数据集直接来自GIS,虽然通常直接被打包(如ARC/INFO输出文件)或重新格式化(如重构为标准传输格式,如SDTS和DIGEST)。然后数据集置于便于网络传输的文件系统,通常是FTP或Web(HTTP)服务器。2静态地图显示地图图像文件一旦创建,就如其它形式的图形图像一样在Web上分布,在用户浏览器端作为HTML文档或按图像本身显示。Web服务器端和浏览器端都没有地理数据的计算处理。该方法虽然技术简单,但可能回拥有最广泛的用户,因为对浏览器和用户要求最少。3元数据搜索元数据搜索从根本上是一个数据库查询应用,具备简单的空间查询能力。元数据库由数据组成,这些元数据是对某一个部门的地理信息系统的结构化的描述。该类站点的最著名的例子就是美国国家地学空间数据交换站点(NGDC-http:/fgdlerhs.er.usgs.gov)。该服务实际上提供了一个能访问分布于世界各地的元数据库的中央搜索界面。4动态地图显示地图不是静态的,而是根据用户选择的参数,如比例尺、位置和专题即兴绘制。地图要么通过DGI网关程序由标准GIS系统(如Mapinfo,Arcinfo)传输,要么由地图发生器产生,该发生器是一个为动态制图特别编写的程序。任一方式中,地图均可以从一个站点或多个空间数据集绘制。该类站点大多采用“轻客户端”策