其实作为一种新的信息服务体系,ESRI所倡导的这种新的企业地理信息服务器就是当前流行的B/S结构的一种在地理信息系统方面的应用。随着企业应用越来越复杂,C/S结构已经不能够再满足日益增长的软件和企业需求。B/S的出现是计算机软件发展的结构也是地理信息系统发展对计算机发展要求的结果。
介绍
过去40年的发展,地理信息系统(GIS)已经被各个计算机体系结构实现了(Coleman 1999)。最早的系统建立并运行在框架和微处理器上,然后是工作站,接下来是PC机,现在系统设计推荐使用基于分布式网络(Peng and Tsou 2003)。一个新的体系现在正在浮出水面,那就是运行在中心服务器环境和可以从网络中的任何设备访问的体系结构。这个白皮书将描述这个到来的新的企业地理信息服务器以及建立真正的分布式企业地理信息系统的实现。
GIS子系统
地理信息系统包含三个主要子系统:制图,空间分析(地理处理)和数据管理。一个有用的,具有通用目的的GIS需要有能力处理所有三个方面。
制图子系统处理地理信息的操作和可视化。在这个子系统里面,用户可以找到地图投影和基准(Datum)转换,地图到页面(Page,译者认为是在打印出纸质地图所使用的打印页)的转换,符号模型,地图显示,两维和三维可视工具,编辑控件和地图形式的地理数据的接口框架。
空间分析子系统实现一系列功能如两个经典的地理操作-领近和叠加等地理分析功能以及数据转换功能(输入计算机辅助设计『CAD』数据,输出地图等),网格分析(分水岭模型,内部可视分析等)和三维分析(计算斜坡,方位等)。
再过去的几年中,使用非定制的商业数据库管理(DBMS)系统诸如M$的Access, IBM DB2, Oracle和M$ SQL server等存贮和管理地理信息变成了很平常的经验。DBMS产品由于可以容许用户创建单个的,集中数据的数据仓库(避免冗余和重复),因而广泛的使用在GIS中;他们方便数据共享(通过建立的实际标准);支持多用户的连续地理数据库的编辑;容许用户使用DBMS备份和恢复工具。然而,对高级地理数据类型(Shekar and Chawla 2003)访问的有限支持和SQL作为地理数据访问和编程语言的弱点和考虑到可扩展(scalability)-例如拓扑管理(Hoel et al. 2003)等,促使DBMS在GIS中的作用被重新检验并且刺激了企业地理信息服务的发展。
三个GIS子系统可以在一个单独的计算机中(单层体系),两个计算机(双层体系)或者一个大的系统中实现,他们通常在这些单独的计算机间延伸(三层体系)。目前,大多数都毫无例外,主要的GIS软件系统都运行在微软视窗操作系统桌面上。在一个单层体系中,表示(用户界面)、商业逻辑(地理处理功能)和数据管理总是运行在同一台机器中。另外一些极端的情况,在一个三层体系表示层(包括制图和空间分析子系统)运行在一个桌面计算机这样的客户端,数据访问的商业逻辑运行在一个中间层应用程序服务器上,数据管理层(DBMS)运行在服务器上。这种类型的配置,客户端已经相当成熟并且在一个高级系统中可以包含上百兆字节数据(code)(一个所谓的胖客户端实现)。这个配置在过去的十年中为GIS用户服务的很好并继续为高级GIS任务诸如编辑,编图,三维建模和空间分析用户服务。然而,近年来,用户对这种体系由于客户端的费用和软件的缺乏而要求更多的维护工作变得不满意起来。要维护和更新这些广泛分布的PC机是非常昂贵的―尤其如果(客户端)用户不能自己做这些工作,而是通过一个广泛分布的组织来保持协作是很困难的。
企业地理信息服务器
一个可以替代的,更加集中的体系结构为解决这些问题而出现了。新体系结构的核心是应用程序服务器层不仅可以包括数据管理GIS子系统,也包括制图和空间分析子系统。在一个服务器上运行GIS所有的部分意味着瘦客户机可用于初始的处理请求和显示结果。这种集中的GIS实现现在可以参考作为企业地理信息服务器。他们容许瘦客户机(Web浏览器)和胖客户机(桌面GIS)有通过本地或者广域网访问数据和处理的能力。服务器本身有两个部分。服务器对象管理器负责和网络的接口(例如Web server)和到服务器中申请请求信息服务容器以执行实际的工作。两部分可以运行在同一个CPU,分散在多个机器上(可扩展-For scalability)或者运行在同一机器的多个CPU上。服务器容器得到数据请求以完成一个来自于数据服务器(一个DBMS)工作。
企业地理信息服务器有许多作为分布式GIS用户的理想特点:
l 低成本维护费用。由于所有的数据和处理集中到一个位置,维护和更新所需的费用降到最小(例如软件更新不需要在成百个PC机上进行)。GIS服务器可以和组织内其他的服务器放在一起,这样同一个信息技术员工就可以同时维护他们了。
l 易扩展性(scalability)。通过安装新内存和磁盘或者服务器,可以容易的得到额外的资源,但却不用把系统关闭。此外,需要的资源不是昂贵的硬件而是随手可得的,低廉的,普通的机器部件。
l 基于标准的数据访问和处理。采用企业地理信息服务器的关键因素是他们基于应用程序编程接口(APIs),向所有开发者暴露所有数据和处理能力。这意味着所有用户可以通过任何位置的网络访问数据和处理。关键标准包括通过网络连接(Web Http)传输的消息和数据使用的扩展标记语言和简单对象访问协议(Extensible Markup Language、Simple Object Access Protocal (XML/SOAP)),建立局域和广域网络的企业应用程序Java和.NET。这些标准提供一个和高级应用服务器通讯充足的环境和建立起真正的企业应用程序。
l 支持所有关键GIS数据类型和功能。为了处理广泛的用户和应用程序,企业地理信息服务器支持所有的普通GIS数据类型和功能。支持的数据类型包括二维和三维矢量,栅格,标注,属性,地址,CAD,测绘量距和计算,尺度(dimensions),网络和拓扑。功能列表包括广泛的制图,空间分析和数据管理工具如地形和专题图,编辑,地理编码,网络分析,数据管理,三维分析,栅格(空间)分析和地理处理。
企业信息服务器适合通过网络访问的远程服务器可以承担的简单和中等复杂的工作。典型的工作包括创建一个用户指定位置和比例的地形图;简单编辑(如heads-up, on-screen land parcel creation and boundary update, or changing the attributes of streetlights and road signage);
和为多家投递站选择最短路径等。需要高度交互执行和扩展本地处理的复杂应用程序不适合广域网络发布并将继续在本地计算机如桌面PC实现。
企业地理信息服务器是企业应用程序服务器这个新信息系统的一个很好的例子。相似的通用目的的系统已经被开发出来,这些主要的开发商有BEA(WebLogic),IBM(WebSphere),Microsoft(Windows Server)和Oracle(Oracle Application Server)。他们依靠和增强DBMS能力来提供应用程序开发工具,网络服务,Web服务接口和可扩展(Scalability)框架。除了GIS外,许多其他的应用程序领域也采用这种服务器实现。企业人力管理(Oracle,PeopleSoft 和 SAP)和客户关系管理(Microsoft,Pivotal,Siebel)系统都是中央服务器应用的例子。
结论
企业地理信息服务器是一种新类型的GIS体系,他可以支持潜在的来自于集中位置的成百上千的分布用户。这个基于工业标准的数据管理,应用程序开发和数据处理访问使得它成为一个理想的向广泛分布的用户提供服务的方法。相似的,低成本的维护,高扩展(high scalability)和出色的可靠性都意味着组织可以创建令人信服的商业案例,他们将会有很好的投资回报。接下来的几年,新的GIS用户组织将建立基于这种新的集中服务器体系的系统,许多现存用户组织也会将他们现有系统转化到这种体系。