1.2. WebGIS的基本概念

1.2.1. 地理信息系统(GIS)

随着计算机、网络和数据库技术的发展和应用的深入,地理信息系统(GIS)技术的发展呈现出新的特点和趋势,基于Internet的WebGIS就是其中之一。除了应用于国土资源环境等传统政府管理领域外,WebGIS还在推动车辆导航、移动定位服务、智能交通、抢险救灾、城市设施管理、现代物流、大数据分析等与人民生活密切相关的行业快速发展。

随着互联网的快速发展和广泛使用,人们对地理信息系统的需求也越来越大。互联网已经成为GIS操作平台的新趋势。WebGIS也真正成为了大众的工具。目前,网络技术在地理信息系统中的应用主要有三种模式:集中式模式、C/S模式和B/S模式。其中,基于B/S模式的网络地理信息系统是一种新的模式,用来解决C/S模式的问题。WebGIS面临的问题,满足了用户对信息管理的需求。

地理信息系统的全称是地理信息系统,中文全称是地理信息系统。它是在计算机硬件和软件系统的支持下,收集、存储、管理、计算、分析、显示和描述整个或部分地球表面(包括大气)空间中相关地理分布数据的技术系统。自从地理信息系统之父罗杰·汤姆林森在20世纪60年代创造了首字母缩写GIS(地理信息系统)以来,这一领域发生了巨大的变化。如今,学生们在地理信息科学、测绘和空间信息系统等相关课程中遇到了许多相同的基础知识。地理信息系统中的G一直被解读为“全球”和“地理空间”,而不是原来的“地理”;S也不是原来的“系统”,而是“科学”、“服务”和“研究”。但如果用一个词来描述所有这些事物的共同点,那么“地理空间”可能是最好的选择。

最通俗易懂的解释是,地理信息系统是利用测绘生成纸质地图或航空摄影和卫星摄影生成图像,然后将这些数据存储在计算机中,以地图或图片的形式表达,根据实际生产、生活和科学研究中的各种需求,再提供具体处理后的数据。

1.2.2. 互联网技术的发展

万维网改变了人类社会的方方面面,也改变了地理信息系统。万维网与地理信息系统的融合催生了万维网地理信息系统这一新兴领域。网络地理信息系统自1993年问世以来发展迅速,其独特的用途和魅力已成为人们使用互联网的主要吸引力之一。

万维网及其广泛连接的巨大影响使地理信息系统受益,使其走出办公室和实验室,进入千家万户的电脑,进入数亿人的手机,地理信息系统广泛应用于政府、企业、教育和科学研究等领域,渗透到我们日常生活的方方面面。

世界上发生的一切都与某个地方有关。了解事物在哪里以及为什么会在那里,对人们做出正确的决策至关重要。地理信息系统或地理信息科学是一门处理与地理位置相关问题的技术和科学,可以收集、存储、管理、分析、表达和共享地理数据,帮助人们做出正确的决策。

地理信息系统比互联网出现得更早。1962年,罗杰·汤姆林森为加拿大联邦政府林业和农业发展部开发了世界上第一个可操作的地理信息系统,名为《加拿大地理信息系统》,用于加拿大土地利用的详细调查、统计和规划。

罗杰·汤姆林森创立了地理信息系统,致力于推动地理信息系统方法论的发展,因此被称为地理信息系统之父。

虽然地理信息系统通常被用来编制地图,但它的功能远远不止这些。它具有强大的分析功能,可以基于共同的地理位置将许多看似无关的数据关联起来,进行综合分析,以挖掘电子表格或统计软件包中隐藏或不易显示的关系、规律和趋势,以支持人们做出科学决策。地理信息系统可以将现实世界抽象为一系列空间数据层,如土地利用、高程、影像、社区、道路和商业客户。GIS可以通过多种方式组合这些层来绘制各种专题地图,而GIS可以进一步分析这些层并提取许多有用的信息来解决以下问题:

在过去的几十年里,地理信息系统的发展和应用在许多领域都得到了很大的发展。万维网的出现为地理信息系统提供了更广阔的舞台。让地理信息系统走进更多行业,走进千家万户。

1.2.3. 什么是WebGIS?

在给出WebGIS的明确定义之前,有必要区分几个相关的概念,即:Network GIS、Internet GIS或World Wide Web GIS (WebGIS)。在国外,WebGIS通常被称为Web Mapping。辨析这些概念有助于正确理解和应用WebGIS。

在所有这些概念中,Network GIS包含的内容最为广泛,包括C/S或B/S模式,即基于各种分布式计算模型的多层分布式地理信息系统应用,可以基于J2EE框架,也可以基于分布式计算框架,如COM/DCOM和CORBA.

这里的网络包括局域网、广域网、互联网和各种无线网络。Network GIS中使用的协议可以是TCP/IP,也可以是不同层的其他协议,如HTTP、WAP、GPRS和蓝牙协议。

Internet GIS是Network GIS的一个子集,它是基于TCP/IP协议的网络地理信息系统,可以在互联网上部署和运行。这些地理信息系统可以是C/S模式,也可以是B/S模式。谷歌的GoogleEarth软件是谷歌提供的C/S模式网络地图服务的客户端软件。

因此,WebGIS是一个基于超文本传输协议的B/S模式分布式计算机应用系统,在Internet或Intranet环境下存储、管理、分析、发布和共享地理信息。

WebGIS可以看作是Network GIS和Internet GIS的一个子集。同时,它也是建立在更高层应用协议之上的分布式地理信息系统。它是一个技术上更复杂的Network GIS。由于负载均衡等任务的需要,通常会使用其他分布式计算模型。

从20世纪80年代开始,大量的地理信息系统软件基本上是基于C/S架构出现的,即必须先在机器上安装专业的地理信息系统软件,然后用户才能根据需要使用这些地理信息系统软件。当然,这种桌面端的地理信息系统软件有其天然的优势,比如开发相对简单,不需要互联网支持,功能比较复杂,响应比较快。但与此同时,它的缺点也不容忽视。首当其冲的是晋升的不便。推广不便的原因在于C/S系统本身的天然弊端:升级不方便、跨平台不方便、用户不安装指定客户端就不方便使用。

本世纪以来,互联网进入爆发式增长阶段,网络铺设和网速大幅提升,为WebGIS的发展提供了坚实的环境。因此,越来越多的基于B/S的地理信息系统开始提供服务,随着富客户端(RIA)技术和动态网页(AJAX)技术的出现和成熟,WebGIS基本可以显示出与C/S结构相同的功能和效果。谷歌地图、百度地图等服务提供商的大规模扩张就是最好的证明。什么是WebGIS是一个应用方向,用B/S技术将地理信息系统可以提供给用户的功能呈现给用户,使用户只需在浏览器上就可以使用这些地理信息系统的功能。

1.2.4. WebGIS的基本特征

WebGIS可以简单地定义为基于Web环境的地理信息系统。目前,Internet/Intranet正以惊人的速度迅速扩张和发展。在这样的形势下,如何将地理信息系统引入Internet/Intranet世界,使地理信息系统能够充分利用互联网的优势,已成为地理信息系统发展研究的重要课题。

从系统集成的角度,综合OpenGIS、ESR和Intergraph的观点,基于万维网的地理信息系统应该具有以下特点:第一,WebGIS是一个开放的系统。注重数据共享、软件重用、跨平台运营、易集成。

简单地说,它可以共享来自多个来源、多个比例尺、存储在不同位置的地理数据;它可以通过对象管理、中间件、插件等技术手段与非GIS系统(如Delphi)集成;可以使用Java、CORBA、DCOM等技术跨平台协同工作,支持客户/服务器模式的使用。

开放系统使地理信息系统用户、软件开发人员和系统集成商受益。第二,WebGIS适合在万维网环境下运行。将地理信息系统软件与Web服务器集成,通过普通浏览器,用户可以随时随地操作Network GIS,享受地理空间信息服务,从而将地理信息系统扩展为公共服务系统,同时拓宽了地图发布渠道,降低了数据分发成本,提高了地理数据共享程度。

最后,Web GIS支持数据分发和分布式处理。地理信息系统服务器为本地和远程用户提供地理数据目录服务、地理数据访问服务、地理空间分析服务、地理模型系统服务和地理空间可视化服务。通过互操作技术,一个地理信息系统的处理过程可以由多个地理信息系统服务器来协调和完成,这些服务器共享分布的数据对象,并在多个不同的平台上协同运行,以最大限度地利用网络资源。

1.2.5. WebGIS的组成

要理解WebGIS的概念,应该注意以下几点:

  • HTTP协议:在众多Web技术中,HTTP是服务器和客户端相互通信的主要协议。

  • 最简单的WebGIS是一个两层体系结构,由一个服务器和一个或多个客户端组成。WebGIS不仅包括所看到的客户端,还包括客户端依赖的服务器,可以是互联网上的服务器,也可以是云计算中心。有时服务器和客户端可以安装在同一台计算机上,但在逻辑上它们仍然是两个独立的单元。

  • 单个WebGIS通常是三层体系结构,包括数据层、逻辑层(或中间层)和客户端(或表示层)。随着地理聚合(mashup;请参见第4章)方法的流行,WebGIS通常利用一个或多个其他WebGIS的服务来形成n层(n>3)结构。

  • WebGIS和桌面地理信息系统正在不断地相互渗透。一方面,WebGIS依托桌面地理信息系统来创建数据、地图等基础资源;另一方面,桌面地理信息系统也在不断扩展,逐渐融入了WebGIS的功能。例如,传统的桌面式地理信息系统ArcMap也加入了WebGIS的功能,可以作为WebGIS的客户端。例如,可使用ArcGISOnline、美国地质调查局、Microsoft Bing地图或ArcMap中的其他底图,而无需自己购买和安装底图数据。开源桌面软件QGIS也具有发布地图服务的功能。

地理信息系统主要由硬件、软件、数据和用户组成。这些组件之间的距离正在增加,并进一步分开。这一现象非常有趣。在20世纪60年代和70年代,这些地理信息系统组件通常安装在计算机上。在WebGIS中,这些组件进一步分离,客户端和服务器也可以相互分离。随着Web服务和聚合(Mashup;请参见第4章)等技术的出现,一个客户端可以使用一台服务器的数据和另一台服务器的分析功能,这进一步分离了GIS的各种组件。

WebGIS的基本要素如下:

  • 服务器有一个URL,这样客户端就可以在Web上找到它;

  • 客户端根据HTTP规范向服务器发送请求;

  • 服务器端执行请求的地理信息系统操作,并通过HTTP向客户端发送响应;

  • 发送到客户端的响应可以是各种格式,例如HTML、二进制图像、XML(可扩展标记语言)或JSON(JavaScript对象表)。

地理信息系统建立地表信息的数学模型,利用计算机技术对数据进行存储、处理和分析。其中,使用Web技术的地理信息系统就是WebGIS。WebGIS的主要特点是面向对象、分布式和可互操作。它将地理信息系统的数据和功能封装成对象,这些对象支持分布式计算,可以存储在不同的服务器上;通过一致的通信协议,对象可以很容易地交换和交互。

WebGIS是万维网地理信息系统,是一种B/S模式的网络地理信息系统。从技术角度看,WebGIS应具备以下基本特征:

  • 通过Web服务器发布动态Web应用程序。

  • 客户端是常用的Web浏览器,如IE、Firefox等。

  • 用户通过网络浏览器与地图交互。

  • WebGIS是基于Http协议的B/S模式的分布式地理信息系统。

它使用HTTP协议实现浏览器与Web服务器之间的通信。用户通过Web浏览器向Web服务器发送请求。服务器通常以包含地图信息的HTML或XML格式向用户返回交互式文档、文档片段或其他格式的地理数据。

1.2.6. WebGIS的优势

与传统的桌面或基于局域网的地理信息系统相比,WebGIS具有以下优势:

1.更广泛的准入

客户可以同时访问位于不同地点的多个服务器上的最新数据,而Internet/Intranet的这一独特优势极大地方便了地理信息系统的数据管理,使分布式多数据源的数据管理和综合更容易实现。

2.平台独立性

无论服务器/客户端是什么类型的机器,无论Web GIS服务器使用什么样的GIS软件,由于使用了通用的Web浏览器,用户可以透明地访问Web GIS数据,在机器或服务器上进行分布式组件的动态组合和空间数据的协同处理与分析,实现远程异构数据的共享。

3.大规模降低系统成本

普通的地理信息系统需要为每个客户端配备昂贵的专业地理信息系统软件,用户往往只使用一些基本的功能,这实际上造成了很大的浪费。Web GIS通常只需要在客户端使用Web浏览器(有时带有一些插件)。软件成本明显低于一整套专业的地理信息系统。此外,由于客户端的简单性而节省的维护费用也不容忽视。

4.操作更简单

要广泛推广地理信息系统,使地理信息系统为广大普通用户所接受。而不是局限于少数受过专业培训的专业用户,有必要降低对系统操作的要求。通用Web浏览器无疑是降低操作复杂性的最佳选择。

5.均衡高效的计算负载

传统的地理信息系统大多采用文件服务器结构,其处理能力完全依赖于客户端,效率低下。然而,一些先进的Web GIS可以充分利用网络资源,将基础和全局处理交给服务器执行,而数据量较小的简单操作则直接由客户端完成。该计算模式能够灵活高效地在服务器端和客户端之间寻求计算负载和网络流量负载的合理分配,是一种理想的优化模式。

1.2.7. WebGIS开发工具的选择方法

对于WebGIS应用程序的开发人员而言,可从以下几个方面综合考虑如何选择合适的开发工具:

1.易用性

尤其是在开发面向公共服务的WebGIS应用程序时,开发工具的易用性尤为重要,因为此类WebGIS应用程序的功能不如专业的GIS应用程序强大,但开发出的WebGIS网站具有很强的互动性、实用性和美观性,这是非常重要的。因此,许多WebGIS开发平台为用户提供了以自定义模板、标签库、样式库,和JavaScript函数库或类库的形式开发WebGIS应用程序的方法。

2.平台独立性

这主要是指WebGIS在服务器端的运行平台。服务器端可以基于Windows NT或Unix平台,但最好是跨平台或独立于平台。基于Java开发的WebGIS产品或通过CGI提供服务的WebGIS产品通常都有这个功能。

3.客户互动的友好性

WebGIS的客户端一般是浏览器。基于HTML的浏览器与地图的交互非常有限。为了增强客户与地图的交互能力,许多WebGIS产品都为其客户端浏览器开发了相应的插件(Plug-in)和ActiveX控件,或者使用JavaScript/DOM来增强客户端的交互性。

4.数据传输和显示技术

对于所有的WebGIS工具,服务器端的处理都是矢量模式。客户端显示的栅格地图和矢量地图各有优缺点:栅格图像客户端不需要下载任何插件或ActiveX控件,但交互性比较差;矢量地图正好相反,但客户端的安全性往往不是很好。这两种方法都需要采取一定的策略来降低地图数据在网络上传输的带宽。

5.可伸缩的系统架构

WebGIS应用一般会占用服务器的大量系统资源。一个好的WebGIS应用程序应该能够充分利用服务器资源,并且在水平和垂直方向上都具有可伸缩性。它可以根据站点的流量和计算量动态启动服务的数量,并在地图应用服务器之间进行合理的负载均衡。