第2章新一代的GIS23第2章新一代GIS软件技术研究2.1第四代GIS技术地理信息系统是一类获取、处理、分析、表示并在不同系统、不同地点、和不同用户之间传输数字化空间数据的计算机应用系统。空间位置、属性及时间是地理空间分析的三大要素。由于地球上80%以上的信息与空间位置有关,它应该成为在操作系统、数据库管理系统之上的主要应用集成平台,占据软件产品的主流地位。但是,目前GIS软件在技术上并不能适应飞速发展的应用要求,尤其不能适应“数字地球”和“数字城市”、“数字区域”建设中数据集成和功能集成的需要。认真研究现有GIS理论与软件实现技术的不足,寻求理论、方法、技术和工具四个层次的突破和创新,已经成为当务之急。2.1.1地理信息系统软件发展的历史回顾自从1960年加拿大测量学家RogerFTomlinson提出“要把地图变成数字形式的地图,便于计算机处理与分析”的观点以来,就一直是研究与发展GIS软件的指导思想。纵观GIS发展30多年的历史,GIS软件技术及其应用取得了巨大的发展,但也存在着严重的不足。从技术层面着眼,其发展大致可以分成三个阶段:1、第一代从60年代中期到80年代的中后期,是GIS软件从无到有、从原型到产品的阶段。由于各种条件,包括自身理论和实现技术的不成熟和IT技术的限制,这一阶段的GIS软件存在许多不足。其基本技术特点为:●以图层作为处理的基础由于当时GIS系统中空间数据的主要来源是纸质地图的数字化,在GIS的数据模型中,图层处于中心地位。定义某一地理轮廓,在此范围内的相关(专题)空间数据组成图层,同一图层的空间数据存放在一个文件之中。空间定位与量算以图廓范围内的平面笛卡尔坐标系为基础,操作局限于当前图层内。利用计算机技术可以计算空间实体之间的拓扑关系,实现同一区域内各种专题数据的叠置、影响区域分析(缓冲)和线状实体的路径分析。但是,各类查询与计算只能在同一图层中进行。●以系统为中心当时的GIS软件空间数据各自有自己的数据格式,自成系统,不同的GIS系统基本上没有联系。与其它的软件工具,例如MRPⅡ软件、CAD软件等在数据和程序上不存在集成关系。第2章新一代的GIS24●单机、单用户由于IT技术的限制,当时的GIS系统只能在单机上运行,尽管在后期X协议和X终端已经普遍使用,但由于不能描述空间数据及其操作,这时的GIS软件无法实现分时操作模式。●全封闭结构,支持二次开发能力非常弱当时的GIS只提供功能极其有限的供查询和计算的自定义语言,与数据库、通用的编程语言没有建立联系,用户只能按照已经开发好的应用系统功能接口操作,或者联机地、一步一步地完成自己预定的计算任务,无法连贯地、批量地实现复杂的自定义应用功能。●在主要实现技术上,以文件系统来管理空间数据与属性数据GIS中的数据分为空间数据和属性数据两类,空间数据描述空间实体的地理位置及其形状,属性数据则描述相应空间实体有关的应用信息。由于当时数据库管理系统只能管理结构化数据,对空间数据这样的非结构化数据使用无法进行定义、管理与操纵,GIS软件只能在文件系统中自行定义空间数据结构及其操纵工具。由于最初关系型DBMS不够成熟与普及,对属性数据这样的结构化数据,也放在文件系统中进行管理,空间数据、属性数据两者之间通过标识码建立联系。●应用领域基本上集中在资源与环境领域的管理类应用。2、第二代从80年代末到90年代中期,是GIS软件成熟和应用快速发展的时期。这一阶段,GIS软件作为一种软件工具,理论与技术已经基本成熟。由于其具备空间数据操纵能力,在应用中受到青睐,应用领域迅速扩展。这个时期,网络技术已经成熟并广泛应用,巨大的应用前景也对GIS软件提出了各种各样的要求,GIS软件实现技术得到了迅速发展。但是,GIS的基本技术体系仍然没有发生根本的变化。其技术特点为:●以图层作为处理基础由于空间数据模型没有根本的变化,以图层为处理基础的模式依然没有变化。对属性数据的查询可以在数据库范围内进行,但对空间数据的操作仍然限制在同一图层之内。在GIS应用系统事先定义的应用功能以外,大量的应用问题求解只能采用人工的步进操作方式。●引入网络技术,多机、多用户由于这一阶段网络技术已经成熟,应用范围迅速扩大,GIS软件也转向多用户和Client/Server结构。但是,由于空间数据组织和存储模式没有根本变化,Client与Server的关系基本上属于空间数据文件下载和回送的关系,基本的空间数据处理功能在Client端实现。是一种典型的“胖Client”类型。Server只作空间数据的服务器使用,以NFS技术为基础,只能实现一种Device-Shared的C/S结构。第2章新一代的GIS25●以系统为中心GIS应用系统仍然是自成体系,不同系统之间空间数据的交换能力有所提高,以数据转换为主要手段。由于属性数据利用商用DBMS来管理,可以利用标准的结构化查询语言来进行操纵,通过属性的综合查询结果显示相应的空间图形,数据操纵能力有所增强。另一方面,可以以属性数据库为纽带与其它系统建立联系,与其它系统的集成能力略有增强,但仍然比较弱。●支持二次开发的能力有所增强由于通用编程语言的编程环境逐渐完善,GIS提供应用编程接口(API)可以嵌入应用系统的程序,例如,系统定义的GIS功能程序可以以库函数的形式出现,通过“Include”方式供应用程序调用。这一阶段的GIS系统支持二次开发的能力有所增强,但灵活性仍受到较大的限制。●以商用DBMS管理属性数据,但空间数据仍用文件系统管理这一阶段的GIS软件用商用DBMS管理属性数据,但仍用文件系统管理空间数据,空间实体位置与其属性通过标识码建立联系。这样,就可以利用商用DBMS提供的强大数据管理功能,数据管理能力大有提高,特别为建立空间数据库的工作提供了许多方便,建库能力大有提高。但是,涉及空间数据的管理与操纵仍然无法利用商用DBMS提供的强大功能。●应用领域开始有较大范围的扩展,但基本上是管理类应用。引入空间数据的优越性越来越为人们所认识,GIS的应用范围迅速从资源环境领域向外扩展。城市规划与公用设施管理、电力、电信管理、交通管理等许多领域成为GIS应用的新热点。规划、布点、选址、路由选择等分析决策应用开始出现,但基本上还是以管理类应用为主。3、第三代90年代中期开始,估计将延续10年或稍长的时间。这一阶段IT技术的突出进步是网络技术,特别是Internet在全球的普及以及面向对象软件方法论和支撑技术的成熟,为GIS软件的技术进步注入了新的活力。GIS逐渐渗透到人类生活的各个方面,迎来了GIS应用高速扩展的时期。大量的应用要求驱使GIS软件技术快速发展,开始具备作为应用集成平台的能力。其基本技术特点为:●仍然以图层为处理的基础,但面临不断演化虽然空间数据的存储引入了新的技术,但空间数据模型仍然没有很显著的变化。商用DBMS(如Oracle、Informix、DB2、SQLSERVER等)相继实现了对空间数据的管理,尽管还不够完善,空间数据的管理手段还是有了明显的提高。但是,由于DBMS对空间数据的操纵手段还比较原始和初等,加上GIS在设计思想上没有突破地图的限制,适合空间数据处理的中间件相当缺乏,以图层为处理基础的局面并没有得到根本的变革,Client端上空间处理仍然以图层下载为主要桥梁。但是,随着GIS应用的多样化,第2章新一代的GIS26以图层处理为基础所带来应用上的不便与弊端为越来越多的人们所认识,新的处理模式正在酝酿与试探之中。●引入了Internet技术,开始向以数据为中心的方向过渡,实现了较低层次的(浏览型或简单查询型)的B/S结构由于Internet技术和WEB技术的成熟与大规模普及应用,GIS开始面向传统行业和广大民众服务,逐渐向以数据为中心的方向过渡,WebGIS走向成熟,已经成为GIS应用的一种重要方式,空间信息应用的B/S结构已经出现。但是,由于对空间数据的操纵手段比较弱,难以实现复杂的一体化操作。目前这类系统基本上是浏览型或功能相对简单的查询型系统,完全操作型的系统尚未出现。●开放程度大幅增加,组件化技术改造逐步完成面向对象软件方法论的成熟,体现面向对象的软件开发工具逐渐普及。其中最突出的是软插件技术,软件系统组件化已经成为一种趋势。国外主要的GIS软件在九十年代中期开始组件化改造,并在20世纪末相继完成。这样,GIS软部件可以与主要的跨平台编程工具结合,作业控制语言可以在软部件基础上组织复杂应用,GIS软部件也可以作为各种应用软件的功能部件出现。至此,GIS软件的开放性大幅度提高,融入了主流软件,实现了跨平台运行的夙愿。●逐渐重视元数据问题,空间数据共享、服务共享和GIS系统互连技术不断发展GIS软件的广泛应用,空间数据和GIS服务功能的共享提到了重要的议事日程。属性数据的共享由于ODBC的出现已经解决,不同GIS系统之间空间数据的共享已经不满足于数据的互相转换,空间数据的元数据问题受到越来越多的关注[3],GIS功能标准化的问题也倍受重视,不同GIS系统之间互操作成为突出的问题[4]。开放GIS组织(ODC)提出了开放地理信息规范(OPENGIS)[5],旨在解决空间数据的继承、共享以及地理操作的分布与共享,对GIS开发平台提出了更高的要求。可以预计,各类空间数据引擎、适应多种GIS软件的功能代理会在较短的时间内出现。OPENGIS(应该还会有改善和提高)就像ODBC之于数据库,将成为空间数据操作的统一标准。●实现空间数据与属性数据的一体化存储和初步的一体化查询,并将不断完善第三代GIS软件实现了用商用DBMS实现了空间数据和属性数据的一体化存储和初步的一体化查询,提高了空间数据的操纵能力[6,7]。多源空间数据仓库技术也将在未来两三年内逐渐成熟。但是,由于目前对空间关系的理解和表达形式还没有一个完整的、确定的框架,空间信息的完整性、一致性研究有待深入,目前的空间数据、属性数据一体化查询语言还比较初等,表达能力还比较弱,完善和提高尚需时日。●应用领域迅速扩大,应用深度不断提高,开始具有初步的分析决策能力。随着GIS应用需求的急剧扩大,大量的LBS(LocationBestService)应用为GIS注入了新的活力,开拓了广阔的市场;GIS进入AM/FM领域导致出现异步更新的协同工作环境。各类分析决策需求、甚至三维应用要求也摆在应用开发的面前。第三代GIS软第2章新一代的GIS27件一般将此类应用问题放在应用层面来解决,在没有探索出一种公共模型的情况下,这种做法不失为有用之道。但是,这必然是就事论事,缺乏一般性。在数据挖掘已经广泛使用的今天,完整意义下的空间数据挖掘还没有出现,更多的是对属性数据进行挖掘,辅以简单的空间显示。存在的问题以及原因分析1、目前GIS软件存在的共性问题归纳起来,目前GIS软件存在的主要共性问题包括;●以图层为处理的基础,处理能力、尤其大范围、跨图幅区域灵活处理能力较弱。由于目前GIS软件不能实现跨图幅的计算,多图幅的空间运算必须首先将涉及的图幅拼成一个新的图幅后才能进行,批量运算的能力大受限制。●二维的空间数据组织与管理,限制了应用范围。目前GIS空间数据模型及其操作的设计在空间上是面向平面二维结构的,实质上并没有三维处理的能力。实际应用中对出现的三维问题或是针对具体问题通过在属性数据中定义附加数据项针对具体问题进行处理,或是采用三维实体表面造型的方法解决类如地形地貌的表现问题,处理能力非常有限。●静态、单时相空间数据组织与管理,限制了分析决策事务的实现。GIS延续了地图处理的模式,只能处理单时相的空间数据,虽然可以有一定的地域分析处理能力,但对于涉及空间数据挖掘,例如切片、钻取等以探索动态的变化趋势寻求发展规律等分析决策事务显得无能为力。●空间数据尺度割裂,单一比例尺数据处理,不同尺度空间数据的互动关系弱。比例尺是地图的基本属性,GIS沿袭处理地图的模式,只能进行单一比例尺空间数据的处理,甚至将为地图出版而进行的地球表面投影平面化处理结果作为空间对象存储的基础。不同尺度的空间数据之间基本上没有