网络地理信息系统.doc

上传人:飞****2 文档编号:51018563 上传时间:2022-10-17 格式:DOC 页数:12 大小:109KB
返回 下载 相关 举报
网络地理信息系统.doc_第1页
第1页 / 共12页
网络地理信息系统.doc_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《网络地理信息系统.doc》由会员分享,可在线阅读,更多相关《网络地理信息系统.doc(12页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、网络地理信息系统修文群摘要网络地理信息系统(Web GIS)是当前GIS技术热点,本文从分析计算模式的进化过程出发,指出基于Web的分布式计算环境,使传统GIS有望实现开放目标,以满足数据共享与互操作需求,进而综述了Web GIS概念、特征、类型和体系结构,通过分析比较其实现方式(CGI,PLUG-INS,JAVA),探索提出网络GIS数据发布的理想方案,包括网络协议的GIS拓展、Web GIS新型数据模型、相关算法、多源数据集城以及网络优化模式(分布式并行处理),最后通过自行开发的Web GIS浏览器(JAVA APPLET)具体予以实现。关键词网络地理信息系统,计算模式,体系结构,JAVA

2、网络应用SummaryWeb GIS is current GIS developing hotspot, the article beginning with analyzing the computing evolution process, points out that the Web distributed environment is the right way to make the traditional GIS industry reach the opening ideal, further step the paper summarizes the conception,

3、characteristics, types and framework of Web GIS,try to bring forward the best plan to publish spatial data on network by analyzing and comparing the realizing methods(CGI,PLUG-INS,JAVA),including network protocol extend ,new data model and its algorithm, complex data integration, and network optimiz

4、ing method(distributed parallel computing), at last realizes it by a Web GIS browser (Java applet) programming case.Key wordWeb GIS, Computing mode, system structure, JAVA APPLET1.计算模式进化与INTERNET回顾计算环境发展历史,从主机时代、C/S分布式计算直至INTERNET,进化的动力始终围绕更高性能,更低成本,更人性化的操作方式。图1 计算模式的进化1.1 集中式管理主机-终端模式,以主机为中心计算环境,数据

5、管理,事物处理高度集中,起始成本高,系统维护升级只涉及主机,管理成本低,但用户端缺乏个人定置,无任何处理功能。适用于大规模集中式应用,具有较高的效率和安全性。1.2 Client/Server结构CLIENT/SERVER结构,以PC为主,适合部门级应用。初级成本低,但随着应用规模扩展,网络上异种资源类型的增多,开发、管理、维护的复杂程度加大,频繁的软硬件升级,后期成本骤升,缺乏关键事物处理的安全性与并发处理能力。1.3 INTERNET集中式与分布式处理都存在其明显的优势与缺陷,以网络中心计算为特征的INTERNET恰到好处地取长补短,兼容并蓄,使计算体系真正成为企业生存发展的生命力。INT

6、ERNET是利用WWW、CGI、JAVA、FIERWALL等技术,为企业、行业提供开放的基于标准的综合性服务计算机网络系统,它将处理、储存、通讯能力将移入网络,集中FRAME和C/S的优点,管理集中,只涉及网络服务器,NC通过下载获得升级功能;同时信息高度分散,通过HTTP、JAVA可访问联接任何URL资源和应用,共享程度高,可伸缩扩展性强,具有高度开放性和灵活性,同时具备高速率和安全性,真正投资于应用而不是计算机本身。图2 三种企业计算模式2.INTERNET = Multi-Tiers * C/S由于C/S被设计成两层模式,即ClientServer,所有的表示逻辑和应用逻辑等都在Clie

7、nt端实现,使之非常臃肿;Server作为数据库、文件服务器,进行业务数据的处理和维护,功能相对简单,这就造成应用系统的性能、可伸缩性和可扩展性低下,对用户的投资缺乏保护。因此,两层结构已经受到责难,而INTERNET的出现恰好弥补了这种构架的不足,将两层结构自然延伸为三层或N层结构:图3 INTERNET的应用层次在这种多层的结构中,Web Server既作为一个浏览服务器,同时又是应用服务器,将整个应用逻辑和规则驻留其上,而只有表示层存在于Client,使Client变得很单纯,从而大大地减轻了Client的负担。这种客户被称之为瘦客户(Thin Client)。在这种结构中,只需随机地增

8、加中间层服务器(应用服务器),即可满足应用的需要。应用服务器支持多种RDBMS和数据类型,并通过对象中间件技术(Java、DCOM及CORBA),在网络上寻找对象应用程序,完成对象间的通讯。这样便屏蔽了网络通讯的细节,使Client和Server均不需要了解对方的具体工作,而实现无缝透明的连接。3.Web GIS的特色由于速率,安全性,面向业务处理等关键要素,Web GIS将首先在INTERNET上获得广泛应用,利用JAVA、CGI、PLUG-IN等开发技术,使企业用户直接通过Browser对GIS数据进行访问,实现检索查询,制图输出,编辑修改等GIS基本功能。3.1 传统GIS系统的弊端多数

9、GIS系统为基于文件共享的低级分布式结构,数据集中存放于服务器,由空间数据库系统进行统一管理,在客户端采用GIS桌面系统进行远程文件调用,存在的主要问题: 文件服务器结构,处理能力完全依赖CLIENT端,效率低下; CLIENT端的任何操作都要将服务器文件远程复制到本地进行,多用户并发操作时,网上存在多个备份,数据完整性难以控制;大量数据频繁传输,造成网络瓶颈,降低系统性能; 成本高昂,企业用户的GIS要求仅限于一般性功能,为此每个CLIENT都配备昂贵的专业GIS软件无疑是巨大浪费; GIS桌面系统操作复杂,需要专业基础和长期培训,不适合企业级及大众化应用;3.2 Web GIS的优势 大规

10、模降低成本,全面取代GIS桌面系统; 将企业成员的交流合作与GIS专业操作有机结合,构成企业群体生产力; 采用页面取代窗口,简单易用,降低专业操作难度; 充分利用网络资源,复杂处理诸如大规模查询交由SERVER执行,数据量较小简单操作(如JAVA APPLET)由CLIENT完成,是一种理想的全局优化模式;4.Web GIS的组成所谓Web GIS是在INTERNET信息发布、数据共享、交流协作基础之上实现GIS的在线查询和业务处理等功能,Web分布式交互操作是工作的重心。Web GIS的基本组成包括:Web服务器;Browser浏览器(GIS 插件);页面描述语言:HTML,VRML;Web

11、交互程序:JAVA,CGI,ActiveX;GIS数据库管理器:ARCSTORM,SDE;图4 Web GIS体系结构.Web GIS实现模式5.1 CGI-通用网关接口 GIS厂商在其产品基础上发展INTERNET解决方案,通常采用CGI,即提供专用空间数据库的Web接口。CGI是连接应用软件和Web服务器的标准技术,HTML的功能扩展,CGI程序与HTML结合实现交互式动态通信。例如,为了让用户可以存取数据库中的信息,CGI可被用来连接网络数据库服务器,在系统中起通讯桥梁作用,通过HTML将客户端请求传给Web服务器,再利用专门的CGI访问GIS服务器,GIS服务器承担查询计算工作,将结果

12、构建成一个HTML文挡反馈给Web服务器,再传回客户端浏览器。由于CGI是服务器上可执行程序,基本上所有的计算机语言都可以用来发展CGI程序,最常用的包括(C/C、Perl和Visual Basic)。CGI技术很快被用于构造能产生动态地图的Web网站,根据程序特点,GIS CGI技术方法可分为以下两类:l CGI启动制图软件以批处理方式运行:这种系统的长处是程序简单,运行速度快,但功能不足,而且大多数GIS软件不能以批处理方式运行。l CGI启动后端GIS程序:一般GIS软件都基于图形用户界面“事件”驱动,一旦启动,就可以一直后台运行等待触发事件。于是网络浏览器上的事件,通过CGI很容易传到

13、后端GIS软件上,CGI和后台GIS软件的信息交换是通过“进程间通讯协议”IPC来完成的,常见的IPC协议有传统UXIX上的远程过程调用RPC,WINDOWS的动态数据交换DDE和实体连接和嵌入OLE以及MAC机上的(Apple event),利用这种CGI方法,只要用户在网络浏览器按一下,信息就通过网络传回到网络服务器上,然后由CGI程序将此信息通过IPC传到后端的GIS软件。例如,可以要求GIS软件将地图某个地区放大,然后将放大后的地图屏幕图象传回给用户。 这种方法的优点在于,运行速度较前一种快,因为它不需要每次启动后端的GIS软件,同时可以利用商业化GIS软件产生高质量的地图。事实上GI

14、S软件的所有功能都可以被利用起来。然而这种方法仍有许多不足之处,首先,很难同时运行多个CGI程序,因为受软硬件的限制,可同时运行的GIS软件的份数通常是有限的,同时亦很难跟踪看出哪个用户用哪份程序。CGI结构中,CLIENT端仅起了一个哑终端的作用,其功能限于向SERVER发送用户请求和显示所接受的SERVER的处理结果,SERVER承担了一切计算功能。这种模式并没有实现真正的分布式协同计算,它仅适用于封闭环境的小型局域网,对于开放型的INTERNET络很容易引起服务器的过载。 其次,这种方法需要制图软件一直处于运行状态,这不仅要求GIS软件所在的服务器一直联机而且也消耗不少计算机资源。当互联

15、网的流量较低时,这种系统会保持良好的运行状态。但多个用户同时访问服务器时,多个CGI备份的同时运行导致服务器负载过重而降低效率,使运行速度大打折扣。显然,用户产生的每一个事件都要通过互联网,由服务器来处理,当互联网流量较高时,CGI并不是一种理想的技术路线。其它的不足之处包括从服务器方面驱动的CGI,必须用某个特定的数据库服务器的专用SQL语言手工编写数据库接口,网络安全问题以及有限的交互性问题(即用户很难直接操作地理实体)。这种系统的例子有ESRI的INTERNET MAP SERVER(),MAPINFO的PROSERVER()。5.2 PLUG-INS GIS插件 基于CGI的系统仅提供

16、给用户端(client)有限的GIS功能,传给用户的信息都是静态的,而且用户的GIS操作都需要由服务器来处理。解决这个问题的方法是把一部分服务器上的功能移到用户端上,这样不仅加快了用户操作的反应速度,而且也减少了互联网上的流量。标准万维网浏览器只提供了一些最基本的浏览和导航功能,而缺乏处理地理空间数据的能力。一种方法是安装额外能和网络浏览器交换信息的专门GIS软件。这种增加网络浏览器功能的方法就叫“插入法”Plug-ins。为便于其它软件厂商发展插入型软件,Netscape公司专门提供了一套应用程序接口(API)。目前这种插入软件已被普遍采用,在多媒体领域尤为明显。这种插入软件不但可以增加网络

17、浏览器处理地理空间数据的能力。使人们更容易获取地理数据,而且可以减少网络服务器的信息流量从而使服务器更有效地为更多的用户服务,因为大多数用户的数据处理功能可以由网络浏览器插入软件来完成。AUTODESK公司的Whip!(),可支持通用浏览器访问GIS数据能力。和传统应用软件类似,插入软件也需要先安装再使用,因而传统软件不同版本之间的不兼容性及版本管理问题仍然存在。5.3 JAVA APPLET 尽管插件可以和网络浏览器一起有效处理空间数据,但这种方法仍有不少缺陷。首先,它将导致用户端负担过重,因为几乎每个软件厂商都希望它的软件能与互联网兼容。这显然不符合标准网络浏览器便宜简单设计思想。其次,众

18、多的插入软件的管理会成为信息技术部门的一个大问题,因为任何人只要可以连上互联网都可以接收最新的插入软件,为解决上述各种问题,互联网程序语言应运而生。互联网程序语言的出现标志着Web GIS的开始,目前最普及的互联网程序语言是由SUN公司开发的Java。 Java是一种面向对象的计算机语言,它借鉴了C、Smalltalk、Object C和Cedar/Mesa等面向对象语言的优点,其特点是简洁动态适应性强,运行稳定、安全,对网络而言,与计算机结构体系无关,容易移植,在一种系统下发展的应用软件可以直接在完全不同的系统下运行。事实上Java编译器产生的是一种独立于任何操作系统的字节码Bitecode

19、,这种字节码程序可以在任何一台Java虚拟机Java Virtual Machine-JVM上运行,任何系统只要支持Java虚拟机就可以运行Java程序,而与程序在何种系统下发展和编译无关,目前Netscape和微软公司的网络浏览器都直接支持Java程序。 第二种互联网程序语言是由微软公司提出的Active X,其实Active X控制是由OLE控制OCX加上一些新的互联网的界面函数发展起来的,Active X仍然依赖现有OLE 编程体系来达到增加互联网的交互性目的,方法之一是利用一个OLE文件实体DocObject作为一个通用控制容器Container,例如,微软公司的网络浏览器Explor

20、er就可以发展成为一个文件实体的控制容器,然后加入GIS引擎作为文个实体的服务器函数。这样扩充后的网络浏览器就能显示和处理地理空间数据。Active X也可以作为服务器,例如,微软公司的分布式COM (Distributed Common Object Model),将使在用户和服务器两端的Active 控制互相交换信息,从而把整个网络上的负荷分布到各个不同的子网上。与Java相比,Active X目前还没有解决非常重要的网络安全问题。 程序语言与前面所述的几种方法的主要不同之处在于允许可执行程序从网络服务器上传到用户机器上,并直接在用户机器上执行,从而省略了一整套传统软件的安装过程。比较而言

21、,这种方法有许多优越之处,容易分发,不要安装且可以集中版本控制。由于程序是在用户端执行的,从而避免了用户和服务器之间不必要的信息流量。它在用户端运行时就象通常的软件一样,当需要数据时,再通过互联网从服务器获取。这样不仅减少了网络信息流量,而且也提高了整个网络的运行效率,再者它也提高了整个万维网GIS的效率。比如图形放大缩小这种常用操作,在用户端的机器上执行,反应就会快得多。如果用前述的CGI技术方法,每一次地图放大、缩小都必须由远程服务器来处理,这个交互过程在用户增多时会很慢。最后,这种技术方法让用户可以自由地处理每个地理实体,而不只是获取一幅由服务器处理好的静态图象。将JAVA作为实现Web

22、 GIS的主要技术,因为: 浏览器的发展趋势是执行网络应用程序的操作系统,JAVA Applets从服务器下载后可在客户端运行而服务器只有I/0开销。 Java本身是一门适合于分布式计算环境的网络开发工具,并且通过JDBC/JAVA SQL 实现了与关系型数据库的连接。6.Web GIS 的设计思想6.1 GIS网络协议HTTP协议基于TCP/IP、属于ISO/OSI模型应用层的通信协议。它的面向对象与可扩展的特性使其比TCP/IP协议支持丰富得多的数据类型如文本、图象、声音等。WWW迅速崛起的经验启示我们,开发一组支持传输GIS空间数据的网络协议对GIS在INTERNET络中的生存和发展十分

23、重要。作为HTTP协议的扩充,开发基于HTTP的GIS数据通信协议是较好的解决办法。 HTTP的可扩展性和面向对象的特性使得构造新的协议简单易行; TCP/IP与HTTP是非常流行的协议,处理专题信息的GIS网络协议难以得到广泛认可; 与HTTP捆绑的GIS协议可迅速遍布INTERNET 网络。图5 传输GIS空间数据的网络协议6.2 Web GIS多源数据的集成 在INTERNET普及之前,GIS的系统集成的重要性就被专家们意识到了,并且提出了全关系化、面向对象等解决方法,但是这些方法在多元数据的集成和专题模型与GIS系统的集成方面都存在着一些问题。随着INTERNET络的广泛应用,GIS面

24、对的是一个松散的开放性的网络,它蕴藏着无穷尽的信息资源。Web GIS如何访问外源数据库并从中迅速检索出Web GIS所需要的信息,是Web GIS系统集成的新内涵。 Web GIS的系统集成应包括两个方面,建立与外源数据的动态链接;利用元数据库实现数据与处理方法集的统一封装,方法集是有一系列字符串表示的数学公式,用户可以动态编辑这些公式。6.3 多线程并行式计算 GIS用户会注意到:在应用程序读/写文件或执行耗时较长的复杂检索、计算和图形刷新时,整个应用程序都处于阻塞状态,用户只能处于被动的等待状态。同时由于网络带宽非常有限,多个用户同时访问同一服务器会导致网络性能急剧下降;网络传输和I/O

25、操作只能占用小部分CPU资源,大部分的CPU时间闲置;此外慢速的I/O操作和耗时、复杂的查询或计算一样使用户被动地等待一项任务完成后再执行其他比较迫切的任务。所有上述问题都是由于应用程序采用了单线程运行机制的缘故,所以为了合理地利用网络与机器的资源,Web GIS需要建立支持高度并发性的多线程模型。6.4 平台独立性 INTERNET络是一个开放性的网络,与其相连的主机运行着各种各样的平台,这些操作系统的唯一的共性是对TCP/IP协议的支持。在这个标准和开放系统备受推崇的时代,跨平台和可移植性在一定程度上决定了Web GIS的可应用性。7.Web GIS的数据模型7.1 Web GIS的数据模

26、型 Web GIS的内部数据采用了面向对象的数据模型,包括点、线、多边形和注释四种基本空间对象类型,每种对象类型包括空间数据和属性数据。图层对象由多个空间对象类型组成,属于同一空间坐标系的图层组成一幅地图。 Web GIS与外部数据的动态连接采用了两种方式,对网络中的GIS空间数据的访问采用了下述的GIS空间数据协议;对Web数据库的访问采用了JDBC(Java Database Connectivity)或JAVA SQL的访问方式。Web GIS与Web数据库的动态链接主要表现在与关系型数据库的链接方面,这是因为:政府、企业等组织拥有的最有价值的信息一直存储在SYBASE、ORACLE、D

27、ATABASE等商业数据库中,这种先期的信息管理方式将促使政府、企业继承原平台继续投资;关系型数据库推出了适应处理多媒体数据的Data Blade技术;各种关系型数据库均推出比较完善的INTERNET解决方案。图6 Web GIS数据模型7.2 GIS空间数据传输协议 MIME是INTERNET络的一种规范数据类型,可用于动态地支持一些非标准的扩充数据类型。这里将定义的几种空间数据类型作为Web GIS在MIME中的扩充数据类型,利用JAVA和HOTJAVA的Content Handler将其规范化、标准化。伪语言描述算法如下:public GISdata extends ContentHan

28、dler public Object getContent(URL layerurl) DataInputStream is=layerurl.openStream(); /打开图层数据库/文件 Layer layer=new Layer(); while(is!=null) layer.addObject(getObject(is); /从数据库中读取一个空间数据类型, /将其加入图层对象中 return layer; /返回图层对象 protected Object getObject(is) /从数据流中获取数据, /并将之构造成GIS的相关空间数据类型(point line poly

29、anno et al.) 7.3 元数据与系统集成Web GIS图层采用了元数据的概念来集成空间数据、属性数据及数据处理方法。元数据库由3部分组成: 规则描述,记录着数据库的操作规则与方法; 数据库描述,记录图层中描述空间对象的二维表结构,并记录URL字段类型所存储的数据库的数据结构信息; 规则解释器,一个用JAVA编写的SQL解释器,用以实现规则库所记录的计算公式等。 Web GIS通过对话框构造数据库操作的规则或公式,将之放入规则库。当数据库运行时,解释器将解析公式,从元数据库所记录的各属性数据库中获取数据来替代这些变量,使公式成为一个数学或逻辑表达式,最后计算公式。8.Web GIS计算

30、模式8.1 分布式并行计算 Web GIS采用Browser/SERVER的计算模式,它支持数据分布和操作分布。对于数据分布,一般是指数据在客户端的分布,但是Web GIS利用JAVA提供的URL对象访问网络上的数据库/文件,其访问方式就如同访问本地文件系统一样,这样Web GIS获取数据就饶开了繁忙的Web 服务器。对于操作分布,Web GIS在客户端运算,承担了服务器的部分工作量,从而提高了整个系统的执行效率,避免了服务器的瓶颈效应。图7 元数据库的概念模型8.2 多线程并行式计算 与单线程系统依靠一个无穷的事件循环模型来顺序控制系统的例程处理不同的是,多线程模型是一种支持高度并发性的系统

31、模型。由于多个任务很少同时需要长时间占用CPU,因此多线程模型将多个任务分为若干个独立的线程并发执行充分利用了系统资源。 JAVA的多线程机制使Web GIS的并行式计算成为可能。Web GIS支持I/O吞吐、查询计算、图形刷新和用户界面等多线程的并发执行,其中I/O线程的优先级最低,查询计算此之,图形刷新和用户界面响应的优先级最高。在一定的时间内,JAVA的抢占式执行方式使优先级高的线程获得了更多的执行时间,因此Web GIS通过赋予与用户交互性强的任务较高的线程级别以增加前台作业的速度,从而减少了用户的等待时间;耗时较长的操作则赋予较低的线程级别,置于后台利用CPU闲散的资源来完成。8.3

32、 平台独立性 Web GIS能存身于开放性的INTERNET络,主要是突破了异构环境的几个限制,机器硬件的差异如工作站和微机之分,操作系统的差异如WINDOWS 95、NT、UNIX等。Web GIS的平台独立性得益于JAVA虚拟机对异构环境下操作系统的屏蔽作用。Web GIS APPLETS的运行基于嵌于浏览器中的JAVA解释器(JAVA虚拟机),虚拟机把APPLETS的操作转换成具体操作系统的子例程,并把结果反馈给APPLETS。9.基于JAVA APPLET 的GIS Web浏览器开发应用 采用上述开发思路,以JAVA语言实现空间数据网络应用服务(GIS APPLET),该工具支持多线程

33、并行计算,具有地图显示和查询等空间操作基本功能,其特色在于,它是一个与具体平台无关的、能自由漫游于INTERNET上的GIS通用浏览器,可实现各种GIS数据的传输与共享。 该工具能够完成图元无极缩放、移动恢复等操作,修改地图基本图形要素如文本注释的大小、颜色与字体、点的颜色与大小、线颜色及多边形的填充类型等,对各种要素,可以按照指定数值特征进行自动类聚分层表达。支持单一、复合空间查询(Identify),选择图层后通过鼠标点击目标,动态影射其相关属性,否则将自动显示点击范围内全部图层属性信息。通过HTTP文件联接,能够有效支持各种网络多媒体数据。对地图属性进行逻辑查询,可选择组合各种条件构造逻

34、辑判断式,根据图层属性不同特征进行检索,并按照结果目标集进行自动匹配放大。 支持的数据格式包括ARCINFO SHAPE、MAPINFO TAB文件,将相关数据下载到本地运行,一次下载,任意操作,功能灵活,节省总体时间成本,通过实时压缩/解压缩处理,能够显著提高数据传输速度和安全性。由于安全性、实际需求以及开发难度等原因,目前尚无数据编辑功能。图8 GIS JAVA APPLET的应用总之,基于Web的分布式计算环境,使传统GIS有望实现开放目标,以满足数据共享与互操作需求,Java是实现上述目标的理想解决之道。 参考文献 1 夏福祥,Web GIS技术 C,中国海外GIS协会文集,1998; 2 宋现锋,WWW的空间数据发布C,地理信息科学,1998。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com