对象式WebGIS的分布操作模型

时间:2022-05-15 10:04:43

对象式WebGIS的分布操作模型

摘 要:面向对象和分布式计算技术的发展促进了webgis分布式、组件化方向演变。将分布式体系和面向对象的思想引入GIS系统,是GIS发展的必然趁势。概括分布式技术下WebGIS的现状和发展,分析目前WebGIS的不足和缺陷。在对Allan Doyle分步骤模型研究的基础上,提出WebGIS的分布互操作模型。最后,给出一种基于CORBA的WebGIS实现模型。它能充分利用服务器端资源,支持多用户的并发操作,具有较高的安全性和与客户端平台无关的优点。

关键词:地理信息系统;空间数据;WebGIS;分布式模型;CORBA

中图分类号:TP311 文献标识码:B 文章编号:1004-373X(2009)04-155-03

Study about Distribution and Interaction Model of WebGIS Based on Object

LI Hongwei,WANG Bohuai

(Yulin College,Yulin,719000,China)

Abstract:With the development of object-oriented and distributed computing technology,WebGIS is developing in the direction of distribution and component.The structure of distribution and the idea of object-oriented is the inevitable trend of its development.This article analyses the shortage of the presented WebGIS,and studies about system framework Allan Doyle′s step-model of GIS.A distribution model of WebGIS and implementation model of WebGIS based on CORBA are proposed.It makes full use of the resource of server and supports operations of multiple users simultaneously,it has high security and is independent of the client platform.

Keywords:geography information system;space data;WebGIS;distribute model;CORBA

分布式地理信息系统就是利用最先进的分布式计算技术来处理分布在网络上的异构多源的地理信息,集成网络不同平台上的空间服务,构建一个物理上分布,逻辑上统一的地理信息系统。它与传统的地理信息系统的最大区别在于数据分布性和针对其中数据处理的计算的分布性。有关WebGIS的设计与实现的理论思想已经很成熟。然而,目前的WebGIS模型在开放性和互操作性方面还存在一定的缺陷,这里仅此做探讨。

1 分布式技术下的WebGIS

1.1 分布式技术与分布式计算模型

分布计算是指在独立的计算机集合系统中,通过网络通信来开发、部署、管理和维护以资源共享和协同操作为主要应用目标的分布式应用系统。分布式系统中计算机在网络中的分布和互联仅是分布式计算的必要条件,分布式系统统一的逻辑特性才是其充分条件。

分布式计算的实现主要依赖于经典的客户机/服务器模型(如图1所示)。客户机发出请求,服务器在接到客户的请求后提供服务。通过平衡客户机和服务器的负载,以实现分布式资源和信息的共享。随着对象模型、构件技术、Web技术的不断进步,分布式计算开始向分散对等的协同计算方向发展,分布式对象技术正成为分布计算的主流。

1.2 传统WebGIS模型分析

传统的WebGIS系统采用万维网应用系统的三层或多层结构(如图1所示)。在Web服务器端可以完成功能强大的空间数据库访问;在客户端,用独立于系统平台的JavaApplet和特定平台上的ActiveX及浏览器插件技术增强它的功能。

WebGIS系统的出现推动了空间数据的广泛应用。但是,这些系统都是为某一种特定应用而设计的,如果用户在使用一个WebGIS系统浏览一个空间信息系统中的数据时,需查看其他空间数据库中的数据,甚至想把这些数据整合起来,是非常困难的。因为这些WebGIS系统所采用的空间数据技术基础决定了它们的封闭性[1]。

由于WebGIS系统对空间数据本身处理保持着完全封闭的状态(如图2所示)决定了它们自身的封闭性,使它们彼此无法共享数据和处理过程。这种缺乏开放性的WebGIS空间数据模型带来的直接后果就是用户很困难,甚至于无法从异构系统中取得相关的空间数据,并把它们融合为一个完整的万维网空间数据应用系统。将来更为严重的后果就是关于NSDI(国家空间数据基础设施)、GSDI(全球空间数据基础组织)和“数字中国”乃至“数字城市”的构想和实施不能建立在这样的空间数据模型之上。

可以看到,传统WebGIS数据模型系统只能实现用户交互性和部分的可扩展及分布能力,而把NSDI、GSDI和“数字地球”对空间数据基础设施所要求的根本特征――分布互操作性却丢掉。

2 分布互操作WebGIS结构模型

2.1 WebGIS数据处理的分步骤模型

Allan Doyle提出基于Web的空间数据分步骤模型,将WebGIS对空间数据的显示划分为4个处理过程[2],即空间数据选择,显示序列的构造,地图的生成和地图的显示,如图3所示。

(1) 空间数据的选择。从空间数据源中选择出要显示的地理实体数据;

(2) 显示序列的构造。把选择出来的地理实体数据组合生成一个显示元素的序列;

(3) 地图生成。将显示元素系列生成最终要显示的地图结果;

(4) 地图显示。将准备好的地图送往显示设备进行最终显示;

如将上述地学空间可视化过程看作相对独立的步骤,每一步骤都接受某一特定形式的空间数据作输入,并输出某种形式的中间结果。箭头表示调用和执行关系。

2.2 分步式WebGIS体系结构

分步骤服务模型没有限制相邻两个步骤必须在一台机器上执行,当其中两个相邻步骤被Internet分开时,就得到3种可能的WebGIS系统体系结构,见图4。

(1) 瘦客户方式,即客户端请求地图图像的方式。在该结构下,作为客户端的浏览器只进行图象显示,而把选择空间数据,生成显示元素序列和地图图像的步骤放在服务器端。优点是客户端不需要下载任何组件或插件;缺点是所有的操作均在服务器端进行,对服务器端性能要求较高,特别是在有大量客户端请求服务时,会造成响应不及时,不适合交互性较强的WebGIS系统。其代表性的技术主要有基于CGI(Common Gateway Interface)的实现方法和基于Server API的方法。

(2) 胖客户方式,即客户端请求空间数据的方式。服务器端只执行查询,从空间数据源中得到需要的空间数据,然后把数据发送到客户方。由浏览器上的Java Applet、ActiveX或浏览器插件进行后面的处理操作。浏览器生成最终结果时,还会向服务器请求必要的显示符号信息。优点是响应速度快;缺点是由于客户端软件功能有限,限制了WebGIS的高级应用,适用于交互性强,但对WebGIS应用要求不高的场合。

(3) 混合方式,即客户端请求图形元素的方式。客户端由地图生成和显示2部分组成,通过Java Applet,ActiveX来实现,由它们向服务器请求要显示的图形元素或地图图像。其优点是综合考虑了客户机、服务器的计算能力和网络传输能力,能够均衡负载,提高系统整体性能;缺点是合理部署客户端与服务器端功能有一定难度,实现复杂,灵活性差。

上述3种WebGIS的体系结构可以满足基于Web的不同用户的应用需求。由于它们都是基于空间数据处理的分步骤服务模型,所以不论采用哪种结构,都可保证它们对空间数据处理的一致性。

采用上述空间数据模型的WebGIS系统,可以保证每个系统上面一个步骤可以调用其他WebGIS系统相应下面步骤的服务。不同的客户/服务器结构,仅是让哪两个处理步骤之间的服务调用跨越因特网而已(如图5所示),从而实现异构系统之间的分布互操作性。

然而,要实现此分布模型,必须处理好跨平台进程之间的通信和协同工作问题。当然,利用移动Agent技术结合CORBA模型框架,能够方便实现这种模型。

3 基于CORBA的WebGIS构架模式

公共对象请求构架(Common Object Request Broker Architecture,CORBA)是由对象管理组织OMG制定的一个工业标准。其主要目标是提供一种机制,使对象可以透明地发出请求和获得应答,从而建立一个异构的分布式应用环境[3]。

CORBA构架模式充分利用现今软件技术研究的最新成果,在基于网络的分布式应用环境下实现应用软件的集成,使得面向对象的软件在分布、异构环境下实现可重用、可移植和互操作。其最突出的特点是中间件的引入和使用了对象模型,使客户机独立于服务器系统,提高了系统的安全性。而且分布在网络中应用对象的获取只取决于网络的畅通性和服务对象特征获取的准确程度,与对象的位置以及对象所处的设备环境无关[3,4]。

这种基于CORBA的WebGIS构架模式的特点为:客户遵循服务对象的对外接口标准,向服务对象提出业务请求,由ORB(Object Request Broker)在分布式对象间建立客户服务对象关系。如图6所示,客户端以客户桩的方式通过ORB机制与服务器联系。

4 结 语

目前的WebGIS模型是GIS 发展中的一种“简易分布”模型,其实质亦是采用不对等的C/S结构的集中模式。WebGIS要达到彻底的分布性、互操作性、交互性、扩展性和移动性,以及异构数据的访问,客户端功能的扩充等,还需人们继续探讨。

参 考 文 献

[1]承继成,李琪,易衫桢.国家空间信息基础设施与数字地球[M].北京:清华大学出版社,1999.

[2]王映辉,周明全,耿国华.面向软件Agent 的“数字城市”组织模型研究[J].计算机科学,2001,9(28):30-32.

[3]\ OMG.CORBA服务[M].韦乐平,译.北京:电子工业出版社,2002.

[4]Open GIS Consortium.OpenGIS Specification:Overview.Wayland(MA),2003.

[5]潘爱民.COM原理及应用[M].北京:清华大学出版社,2000.

[6]Wu Xincai,Guo Lingling,Bai Yuqi.Developing Analysis and Implementation of WebGIS[J].Computer Engineering and Applications,2004(5):69-99.

[7]简钟.GIS开发中面向对象方法的几个关键技术的应用研究[J].计算机与现代化,2000(5):31-33.

[8]Wang Leichun,Guan Jihong,Zhou Shuigeng.Building GIS Web Services on JXTA Network[M].北京:清华大学出版社,2004.

[9]史文中.空间数据与空间分析不确定性原理[M].北京:科学出版社,2005.

[10]朱勤,陈继红.基于分布对象技术的WebGIS设计与实现[J].电子工程师,2004,30(8):57-58,62.

作者简介

李红卫 男,1966年出生,硕士,副教授。研究方向为Web技术。

王伯槐 男,1979年出生,硕士,助教。研究方向为软件体系结构和软件演化技术。

上一篇:微弱振动信号自适应采集系统设计 下一篇:基于小波变换和自相关函数的基音频率检测算法