互联网改变了人类社会的方方面面,也改变了地理信息系统(GIS)。互联网与GIS的融合产生了网络地理信息系统(WebGIS)这一新兴领域。WebGIS自1993年出现后得到了迅速发展,其独特的用途和魅力成为人们使用互联网的主要吸引力之一。不管人们是否意识到,现在绝大多数的互联网用户都已经使用过WebGIS,有的是简单的Web地图,有的是更专业的应用。例如,我们足不出户就可以舒适地坐在家里上网欣赏世界各地的名胜古迹,高清晰的影像让人们身临其境,叹为观止;在旅游前,我们上网查找宾馆、饭店和商店,规划行程,在线地图让我们对陌生的城市了如指掌;用手机签到、与朋友约会、看大众点评、享特价消费,实惠又时尚;在交通堵塞时,汽车的实时路况地图帮我们“另辟蹊径”,即便身处他乡,依然能自由行驶;旅游归来后,我们在微博、旅游网站等网页里加入电子地图,标注自己的旅游路线,展示自己的照片和各地的风光,与全世界的朋友分享……
政府部门利用在线地图报警和预警,可以使公众更快、更准确地获知传染病的传播途径,以及地震、飓风和洪水等灾害的位置,及时制定应对措施。通过有线网络和无线网络,应急办公室能够对来自水利局、交通局、环境保护局、煤气公司以及事故现场的信息进行实时的聚合分析,为应急指挥提供全方位的支持。通过市政府提供的地图标注服务功能,市民在家中就可以表达对某区某街道的规划意见,通过上网就实现参政议政,帮助政府提高规划水平。公共事业服务公司能把紧急维修单派发给离事故发生地最近的员工,通过移动地图可以指挥距离事故发生地最近的员工快速到达事故发生地点,指导他们关闭相关阀门,准确挖掘地面并维修管道。不管大公司还是小企业,即使没有自己的GIS技术团队,也可通过WebGIS进行商务分析,找到最好的商店位置,了解潜在客户的消费习惯并向他们发送有针对性的促销信息……
以上这些例子就是WebGIS的典型应用。互联网所产生的巨大冲击力及广泛的连通性,使GIS获益匪浅,让GIS走出了办公室和实验室,走入千家万户的计算机里,到达亿万大众的手机里,让地理信息广泛应用于政府、企业、教育和科研等领域,深入到我们日常生活的方方面面。
互联网的发明是人类文明发展史上的重要里程碑,它铺设了一条信息高速公路,改变了人们的生活方式和工作方式,让人类社会步入了一个前所未有的信息化时代。在介绍WebGIS之前,让我们先了解一下互联网、移动网和GIS的出现和演变。
在20 世纪60 年代,美国国防高级研究计划局(Defense Advanced Research Projects Agency, DARPA)启动了一个网络研究项目——阿帕网(ARPANet),其目的是建立一个分布式的计算机网络,即使其中的一些节点不能工作或被核武器摧毁时,依然能够进行信息交换。1969 年,阿帕网项目组成功地连接了美国西部四所大学(斯坦福大学、加利福尼亚大学圣芭芭拉分校、加利福尼亚大学洛杉矶分校和犹他州立大学)的计算机,这标志着互联网的诞生。阿帕网就是今天互联网的前身。随后,阿帕网由军用转为民用,一些政府部门、大学和研究机构的计算机逐步加入该网络中,到1975年年底阿帕网中的计算机数量达到57台,到1989年年底达到10万台。
20世纪90年代以前,互联网并不像今天这样流行,因为当时互联网上的内容和所能提供的服务有限,主要有电子邮件、新闻讨论组(不同于今天基于万维网的论坛)、文件传输和远程登录。当时的互联网使用复杂、内容也不像现在这样丰富多彩,所以其用户基本上都是研究机构和政府部门的专业人员。
1989年,欧洲粒子物理研究所的科学家蒂姆·伯纳斯·李(Tim Berners-Lee)极大地改变了互联网的使用方式。当时他在寻求一种简单的方法来与同事分享和交换文件。1989年,他在一个项目建议书中描述了万维网的设想;1990 年,他编写了第一个网页以实现他的设想。在这个研究中,他发明了HTTP、HTML和URL,把自己的发明命名为万维网,开发了世界上第一个Web服务器和Web浏览器,因而被称为“万维网之父”(如图1.1所示)。
图1.1 “万维网之父”——蒂姆·伯纳斯·李(图片来自网络)
万维网使互联网变得充满乐趣且方便易用,它彻底改变了我们的工作和生活方式,使计算机的主要角色从计算扩展到日常交流和娱乐。此后,万维网迅速扩展,互联网中的计算机数量、网站数量、资源类型和用户数量呈指数级增长。人们越来越习惯于网上冲浪,而不必再花钱订阅报刊;电子邮件具有“光的速度”,瞬间可到达天涯海角,特快专递不可与之同日而语;我们每天都发送几十封国内国际电子邮件,而不必再奔波到邮局;利用淘宝、京东等网上购物和拍卖网站,我们足不出户就可以货比三家,找到最好的交易;利用抖音和快手等社交网站,可以方便地找到老朋友,结交新朋友;利用微信和微博,可以随时了解天下的大事小情或朋友的所思所想;对于很多人来说,视频网站具有丰富的内容和个性化的频道,比电视节目更具吸引力;即时通信软件拉近了您与远在天涯的家人的距离,听其声、见其人,随时聊天而不用再担心电话费用;使用免费的在线影集,您可以与全世界的朋友分享数以千计的照片,而不必再冲洗和邮递照片;人们不必再查阅厚厚的电话簿,鼠标轻轻点一下,就能够在网上找到所需要的商家信息;通过视频会议,人们可以舒舒服服地坐在办公室中见客户、谈生意,而不必再起早摸黑地去赶飞机、追火车,免去了很多出差的费用和旅途的辛苦。今天,万维网已经成为现代社会中不可或缺的部分,很多人,特别是那些随着万维网一起长大的年轻人,甚至无法想象没有万维网的生活会是什么样子。
在很多人的认识中,互联网和万维网是同义词,但实际上它们有所不同。互联网是一个把分布在全世界的、数以百万计的计算机等设备连接起来的巨大的计算机网络。互联网上的计算机可以通过一系列的协议与其他计算机交流,这些协议包括HTTP、SMTP、FTP、IRC、IM、Telnet、P2P等。万维网是互联网上的众多网站和超文本文件的集合,它主要通过超文本传输协议(HTTP)把各种超文本文件链接起来。虽然HTTP只是互联网协议中的一个,但它所聚集起来的丰富内容和所能支持的用户交互活动,是互联网最主要的吸引力,因此万维网也被称为互联网的“门面”。
近年来,iPhone和iPad以其让人着迷的用户体验而风靡全球,引领智能手机和平板电脑的发展潮流,智能手机及平板电脑如雨后春笋般迅速普及,移动用户的数量不断壮大。根据人民网研究院于2022年6月29日发布的《中国移动互联网发展报告(2022)》显示,截至2021年年底,全球上网人口达到49亿,大约占全球人口的63%(注:分布不均衡,一些人具有多部手机和平板电脑)。无线保真(Wi-Fi)技术、4G和5G蜂窝移动通信技术也得到了迅猛发展,越来越多的用户订购了手机宽带网,推动了互联网和万维网的爆炸式增长。展望未来,无线网络将比有线网络更庞大,让人们能够随时随地享受到上网的自由和乐趣。
随着Web技术、组件技术、分布式系统等的发展,在21世纪初出现了Web服务技术,并逐渐引起人们的注意,成为分布式异构GIS进行互操作集成的首选技术。
在Web应用的不断发展过程中,人们发现Web应用和传统桌面应用(如企业内部管理系统、办公自动化系统等)之间存在着“鸿沟”,人们不得不重复地将数据在Web应用和传统桌面应用之间转换,这成了阻碍Web应用进一步发展的一个巨大障碍。
从1998 年开始发展的XML技术及其相关技术已证明可以解决这个问题,而随后蓬勃发展的Web服务技术则正是针对这问题的最佳(在当时看来)解决方案。Web服务的主要目标就是在现有的各种异构平台的基础上构筑一个通用的、与平台和语言无关的技术层,各种不同平台之上的应用依靠这个技术层来进行彼此的链接和集成。Web服务与传统Web应用技术的差异在于:传统Web应用技术解决的问题是如何让人们使用Web应用所提供的服务,而Web服务则要解决的问题是如何让计算机系统来使用Web应用所提供的服务。
将Web服务应用于GIS,可以使传统的GIS实现从独立的C/S架构或B/S架构到基于Web服务体系的跨越。
从开放地理空间信息联盟(Open Geospatial Consortium, OGC)制定的规范名称中也可以看出GIS向Web服务的发展趋势,从 Web Feature Server Implementation Specification (OGC 01-065)到 Web Feature Service Implementation Specification (OGC 04-094),原先用Server,后来用Service,这实际上体现了从传统的WebGIS向Web服务的转变(如图1.2所示)。
图1.2 从传统的WebGIS向Web服务的转变
在Web服务发展的初期,XML格式消息得到了广泛的应用。XML格式消息的第一个主要用途是应用于XML远程过程调用(XML-Remote Procedure Call, XML-RPC)协议。在XML-RPC协议中,客户端发送的特定消息中必须包括名称、运行服务的程序,以及输入参数。
为了标准化,跨平台又产生了基于简单对象访问协议(Simple Object Access Protocol, SOAP)的消息通信模型。SOAP在XML-RPC协议的基础上,使用标准的XML描述了RPC的请求信息(URI、类、方法、参数、返回值)。XML-RPC协议只能使用有限的数据类型和一些简单的数据结构,SOAP能支持更多的数据类型和数据结构。SOAP的优点是跨语言,非常适合异步通信和针对松耦合的C/S架构,缺点是必须在运行时做很多检查。
随着时间的推移和SOAP的推广应用,人们很快发现其实已经存在一个最开放、最为通用的应用协议,那就是HTTP。虽然使用SOAP的确让进程间通信变得简单易用,但并不是每个厂商都愿意升级自己的系统来支持SOAP,而且SOAP的解析也不是支持所有编程语言的。HTTP正好完美地解决了这个问题,因此可以设计一种使用HTTP来完成服务端与客户端通信的方法,于是REST(Representational State Transfer)应运而生。REST采用简单的URL来代替一个对象,其优点是轻量、可读性较好且不需要其他类库的支持,其缺点是URL可能很长且不容易阅读。
1991 年8 月,第一个静态页面诞生了,这是由蒂姆·伯纳斯·李发布的,想要告诉人们什么是万维网。从静态页面到Ajax技术,从Server Side Render到React Server Components,历史的车轮滚滚向前,一个又一个技术在诞生和沉寂。
1994 年,万维网联盟成立,超文本标记语言正式确立为网页标准语言,我们的旅途从此开始。
Web1.0 时代是一个群雄并起、逐鹿网络的时代,虽然各个网站采用的手段和方法并不相同,但第一代互联网有诸多共同的特征,主要表现在技术创新的主导模式、基于点击流量的盈利模式、门户合流、清晰的主营兼营产业结构、动态网站。在Web1.0上做出巨大贡献的公司有Netscape、Yahoo和Google。Netscape研发出了第一个大规模商用的浏览器,Yahoo提出了互联网黄页,而Google后来居上,推出了大受欢迎的搜索服务。
Web1.0的特征如下:
(1)Web1.0 基本采用的是技术创新主导模式,信息技术的变革和使用对于网站的发展起到了关键性的作用。新浪以技术平台起家,搜狐以搜索技术起家,腾讯以即时通信技术起家,盛大以网络游戏起家,这些网站在创始阶段的技术痕迹相当之重。
(2)Web1.0 的盈利都基于一个共同点——巨大的点击流量。无论早期融资还是后期获利,Web1.1 时代的网站依托的都是为数众多的用户和点击率,以点击率为基础开展增值服务,受众群众的基础决定了盈利的水平和速度,充分地体现了互联网的“眼球经济”色彩。
(3)Web1.0 的发展出现了向综合门户合流的现象,早期的新浪、搜狐与网易等,继续坚持了专业门户网站的道路,而腾讯、MSN、谷歌等网络新贵,都纷纷走向了门户网络,尤其是对于新闻信息,有着极大的、共同的兴趣。这一情况的出现,在于门户网站本身的盈利空间更加广阔,盈利方式更加多元化,占据网站平台,可以更加有效地实现增值,并延伸到主营业务之外的各类服务。
(4)Web1.0在合流的同时,还形成了主营与兼营结合的清晰产业结构。新浪以新闻+广告为主,网易拓展游戏,搜狐延伸门户,各家以主营作为突破口,以兼营作为补充点,形成多元发展方式。
(5)在Web1.0时代,动态网站已经广泛应用,如论坛等。
Web2.0既是指相对于Web1.0的新时代,也是指由用户主导生成内容的互联网产品模式。
从科技发展与社会变革的大视野来看,Web2.0 可以说是信息技术发展引发网络革命所带来的面向未来、以人为本的创新2.0模式在互联网领域的典型体现。Web2.0更注重用户的交互作用,用户既是网站内容的浏览者,也是网站内容的制造者。所谓网站内容的制造者,是指互联网上的每个用户不仅仅是互联网的读者,同时也是互联网的作者;不仅在互联网上“冲浪”,同时也是“波浪”制造者;在模式上由单纯的“读”向“写”以及“共同建设”发展;由被动地接收互联网信息向主动创造互联网信息发展,从而更加人性化。
Web2.0模式下的互联网应用具有以下显著特点:
(1)用户分享。在Web2.0模式下,用户可以不受时间和地域的限制分享各种信息,既可以得到自己需要的信息,也可以发布自己的信息。
(2)信息聚合。信息在网络上不断积累,不会丢失。
(3)以兴趣为聚合点的社群。在Web2.0模式下,聚集的是对某个或者某些问题感兴趣的群体,可以说,在无形中已经产生了细分市场。
(4)开放的平台、活跃的用户。平台对于用户来说是开放的,而且用户因为兴趣而保持比较高的忠诚度,他们会积极参与其中。
Web3.0 是由业内人员提出的概念,网站内的信息可以直接和其他网站相关信息进行交互,能通过第三方信息平台同时对多家网站的信息进行整合使用;用户在互联网上拥有自己的数据,并能在不同的网站上使用;完全基于Web,用浏览器即可实现复杂系统程序才能实现的系统功能;用户数据经过审计后,可同步为网络数据。
Web3.0 包含多层含义,例如,用来概括互联网发展过程中某一阶段可能出现的各种不同的方向和特征,包括将互联网本身转化为一个泛型数据库;跨浏览器、超浏览器的内容投递和请求机制;人工智能技术的运用;语义网;地理映射网;运用三维技术搭建的网站甚至虚拟世界或网络公国等。
Web3.0和Web2.0一样,仍然不是技术的创新,而是思想的创新,进而指导技术的发展和应用。Web3.0之后将催生新的“王国”,这个“王国”不再以地域和疆界进行划分,而是以兴趣、语言、主题、职业、专业进行聚集和管理的“王国”。
通常,世界上发生的事情都与一个地点相关联。知道某事某物在哪里和它们为什么在那里,这些对于人们做出正确的决定是至关重要的。GIS是一门处理与地理位置有关问题的,能够对地理数据进行采集、存储、管理、分析、表达和共享,帮助人们做出正确决策的技术和科学。
GIS的出现比互联网更早些。1967年,罗杰·汤姆林森(如图1.3所示)为加拿大联邦政府林业和农业发展部开发了世界上第一个可操作的GIS,称为“加拿大地理信息系统”,用于加拿大的土地利用详查、统计和规划。罗杰·汤姆林森(Roger Tomlinson)开发了GIS,并致力于推动GIS方法论的发展,被称为“地理信息系统之父”。
图1.3 罗杰·汤姆林森(来自网络)
尽管GIS通常用于编制地图,但它的功能远不限于此。GIS具有强大的分析功能,能将很多看似无关的数据以它们共同的地理位置为基础关联起来,并进行综合分析,将那些在电子表格或统计软件包中隐藏的或不容易显示的关系、规律和趋势挖掘出来,以支持人们做出科学决策。GIS可以把现实世界抽象成一系列的空间数据层,如土地利用、高程、图像、街区、道路和商业客户等(GIS地理数据层模型如图1.4所示),GIS可以通过多种方法把这些图层组合起来,绘制出多种专题地图,并对这些图层进行更进一步的分析,从中提取大量有用的信息,解决诸如下面的问题。
图1.4 GIS地理数据层模型
(1)分析方法:可以利用缓冲区分析进行粗略的估计(如距离河边50m),或者用三维立体表面模型进行更准确的分析,还可以结合降水和洪水过程的信息,建立更精确的洪水淹没模型,考虑自然降水量和洪峰过程,动态模拟淹没范围和淹没过程。
(2)应用:政府部门可以根据上面的信息制定有关的政策、进行区域规划和应急管理。例如,哪些区域的洪水危险系数较高,不宜开发为居民区?如果洪水将要暴发,需要优先疏散哪些地方的居民?疏散到哪里?
GIS把现实世界抽象成系列的地理数据层,每一层代表一个专题。这些数据层可以用二维或三维的地图形式显示出来,用于地理分析和模拟,来解决现实世界的问题。
(1)分析方法:利用GIS的叠加分析功能,保险公司可以对上述洪水淹没区与其客户分布图层进行叠加,从而来确定哪些客户的房子遭受水灾的可能性较大。
(2)应用:保险公司能够对不同地区的用户制定不同的收费标准,也能够预先计算出洪水暴发后可能的理赔总额,以计算投资风险。
(1)分析方法:通过GIS技术可以找到两岸地势较低、人烟稀少的地方作为泄洪区,找出最佳的决堤地点。
(2)应用:政府可以做好预案,紧急救援人员能预先做好准备,以减少损失,挽救生命。
上面只是GIS应用的一个简单例子。自GIS产生以来,GIS行业已经建立了有关数据管理、可视化和空间分析的理论基础,并研发出了丰富的产品,使GIS在城市规划、国土管理、环境保护、市场分析、公共安全和生态系统模拟等多个领域中发挥了重要作用。在这些应用中,GIS的作用远远超出了制图范畴,其丰富的分析功能帮助人们利用空间思维模式,发现事物的隐含关系、空间分布规律和演变趋势,做出智慧的决策。GIS把地理分析引入所有与地理空间因素相关的设计过程中,为地理规划和决策创造出了一套系统的方法论和工具集,能够帮助人们了解、分析和解决当前世界上的诸多问题。过去几十年中,GIS的发展和运用使很多领域受益匪浅。万维网的出现更是给GIS提供了更广阔的舞台,让GIS走向更多行业,走进千家万户。
GIS地理分析及应用如图1.5所示。
图1.5 GIS地理分析及应用
从某种意义上讲,GIS是计算机和信息技术在地理科学中运用发展的产物,因此GIS不仅受其自身应用和需求的推动,同时也受计算机和信息技术的推动。
20世纪60年代末,世界上第一个GIS——“加拿大地理信息系统”诞生。该系统主要用于自然资源的管理和规划。随后,美国哈佛大学研制出SYMAP系统。GIS日益引起各国政府和科学家的高度重视,得到了迅速发展。GIS的发展经历了20世纪70年代的大量试验开发阶段,20世纪80年代的商业开发和运作阶段,以及20世纪90年代的用户为主导的阶段。在GIS的发展初期,只有地理研究、地质调查、土地森林管理、人口调查等专业部门及其研究人员感兴趣。目前,GIS已深入政府管理、城市规划、地学研究、资源开发利用、测绘和军事等多个领域。GIS已远远不是地理学界或测绘学领域的概念,已成为人们采集、管理、分析空间数据,共享全球信息资源,为政府管理提供决策,科学研究,以及实施可持续发展战略的工具和手段。GIS的内涵也从狭义的GIS扩展到更广泛的空间信息系统(Spatial Information System),并逐渐形成地理信息科学(GeoInformatics)。
从20世纪60年代以来,计算模式的发展经历了从单机计算、集中计算到C/S架构、B/S架构等不同阶段,现在正处于以Web服务(Web Service)为主要特征的面向服务的计算模式。
就技术层面而言,GIS的发展也经历了四代(如图1.6所示)。从GIS中引入的网络技术来看,第一代GIS(20世纪60年代至80年代中期)以单机单用户为平台,以系统为中心;第二代GIS(20世纪80年代中期至90年代中期)开始引入网络,实现了多机多用户;第三代GIS(20世纪90年代中期至21世纪初)引入了互联网技术,开始向以数据为中心的方向过渡,实现了较低层次的(浏览型或简单查询型)B/S架构;第四代GIS(21世纪初至今)引入了Web服务、云计算、大数据、物联网、人工智能AI等技术,实现了面向服务的较高层次的WebGIS。
图1.6 GIS的发展历程
互联网、万维网与传统学科的融合促使了许多新领域的诞生,WebGIS便是其中之一。自WebGIS诞生以来,其发展越来越迅速,在很大程度上已经改变了地理信息的传输、共享、可视化等各个环节,是GIS发展史上的重要里程碑。
1993年,施乐公司帕洛阿尔托研究中心(Palo Alto Research Center, PARC)开发了首个基于Web的地图浏览器(如图1.7所示),这标志着WebGIS的诞生。该研究中心在研究基于Web的人机交互时,开发了交互式的地图网站,该网站提供了简单的地图缩放、图层选择和地图投影转换等功能。用户可以用Web浏览器(如当时的Netscape)来浏览地图网页,单击页面上的放大、缩小等功能链接,Web浏览器就会向Web服务器发出一个基于HTTP的请求,Web服务器则根据收到的请求进行相应的地图操作,制作出一幅新的地图,并将它传回到Web浏览器,Web浏览器就会接收并显示这个新地图。这个网站首创了在Web浏览器中运行GIS的方法,展示了用户不必在本地安装GIS数据和软件,就可以在任何有互联网的地方使用GIS,这个优势是传统的桌面GIS无法比拟的。
GIS界认识到了WebGIS的上述优点,迅速采用了这种方法,开发了许多WebGIS应用。例如:
(1)1994 年,加拿大国家地图信息服务网发布了加拿大第一个在线国家地图集。它是一个交互式的地图网站,可以让公众选择一些数据层,如道路、河流、行政边界和生态分区等,服务器可以选择合适的符号制作出用户所需要的地图。公众可以在家里查询在线地图,而不必亲自到政府办公室来申请地图。
(2)1995 年,加利福尼亚大学圣芭芭拉分校等机构开发了亚历山大数字图书馆(Alexandria Digital Liberary, ADL),美国地质调查局(USGS)研发了全美地理数据仓库。这两个网站允许用户按关键词或按地区来查询自己所需要的地图、影像或其他地理信息,是早期地理信息共享门户网站的例子。
图1.7 首个基于Web的地图浏览器
(3)1995 年,美国人口普查局发布了TIGER(集成拓扑的地理编码和参考格式)制图服务,把数据量巨大的全国人口信息做成在线地图,供公众使用。公众可以查询州、县和市的人口信息,如种族、教育、收入和年龄等,在Web浏览器中绘制与查看自己所需要的专题图。
1995年,加利福尼亚大学伯克利分校的博士研究生Suren Huse研发了GRASSLinks。GRASS当时是一个桌面GIS,Suren Huse在GRASS和Web服务器之间编写了一个接口,即GRASSLinks,使得GRASS能够接收来自Web浏览器的请求。基于GRASSLinks开发的WebGIS应用,可以让用户发送图层选择、缓冲区提交和叠加分析等请求,Web服务器收到请求后,会把该请求进一步发给GRASS;GRASS进行分析后把结果返回Web服务器,Web服务器把此结果返回给用户。GRASSLinks是利用WebGIS进行地理分析的一个早期例子。
(4)1996年,MapQuest发布了面向大众的在线地图,方便人们进行地图浏览,寻找宾馆、饭店等商业兴趣点(POI),计算从一个地点到另一个地点的最佳路径。今天,这类在线地图已经非常普及,而MapQuest就是它们的早期代表。
虽然这些早期的WebGIS应用只提供一些有限的功能,但它们清楚地展示了WebGIS优势:用户不必在自己的计算机上安装GIS软件和数据就可以在任何地方上网使用GIS。1996年,商业WebGIS软件相继出现,在这些软件的基础上,美国地质调查局、环境保护署、住房和城市发展部、土地管理局,以及许多其他国家的政府、企业和科研等机构,开发出了WebGIS在很多领域的应用。
(5)2000年以后,我国WebGIS技术和应用越来越多,经过多年的发展和实践,政府部门和科研机构的WebGIS(如天地图、地质云等)、商业机构的WebGIS(如高德地图、百度地图等)和个人爱好者开发的WebGIS逐渐成熟起来。
WebGIS早期被认为是运行在Web浏览器中的GIS,但这个定义并不完整。广义而言,WebGIS是使用了Web技术的各种GIS。狭义而言,WebGIS是通过Web技术来连接其组成部分的GIS。WebGIS是一种分布式系统,它至少需要一台服务器和一个客户端,这个客户端不限于Web浏览器,也可以是桌面应用程序或移动应用程序。WebGIS的基本结构如图1.8所示。
图1.8 WebGIS基本结构
理解WebGIS的概念需要注意以下几点:
(1)HTTP。在众多的Web技术中,HTTP是服务器和客户端进行通信时的主要协议。
(2)最简单的WebGIS是分布式两层体系结构,包括一台服务器和一个或多个客户端。WebGIS不仅包括客户端,还包括该客户端所依赖的服务器,该服务器可能是互联网上的某台服务器或某个云计算中心。有时服务器和客户端可以都装在同一台计算机里,但从逻辑上讲,它们是两个独立的单元。
(3)单个WebGIS通常采用分布式三层体系结构,包括数据层、逻辑层(或中间层)和客户端(或表现层)。随着地理聚合方法的流行,一个WebGIS经常利用另外一个或多个WebGIS的服务,从而形成一个 n ( n >3)层结构。
(4)WebGIS和桌面GIS正在不断地相互渗透。一方面,WebGIS依靠桌面GIS来创建数据和地图等基础资源;另一方面,桌面GIS也在不断扩展,逐渐加入了WebGIS的功能。例如,ArcMap这一传统的桌面GIS也加入了WebGIS的功能,可以作为WebGIS的客户端;用户可以在ArcMap中使用ArcGIS Online、美国地质调查局、微软必应地图或其他机构所提供的底图,而不必自己去购买和安装这些底图数据。
WebGIS与互联网地理信息系统(Internet GIS)的概念很接近。严格来说,两者还有着细微的差别,互联网支持很多种服务,而万维网只是其中的一种,因此Internet GIS比WebGIS涵盖的范围更广。但实际上,万维网是Internet中最吸引人和最常用的服务,因此WebGIS是Internet GIS的主要形式,两者基本等同。WebGIS与其他GIS的关系如图1.9所示。
图1.9 WebGIS与其他GIS关系
地理空间网络(GeoWeb或Geospatial Web)是另一个与WebGIS相关的术语。GeoWeb有多种理解。一种理解是指地理空间信息和抽象信息(即非地理信息,如网页、图片、视频和新闻)的结合。该定义和地理标记(GeoTagging)和地理解析(GeoParsing)关系密切。另外GeoWeb也经常被用来泛指WebGIS。
GIS通常由硬件、软件、数据和用户组成,这些组成部分之间的距离不断增加和进一步分离,这种现象是很有趣的。20世纪60、70年代,这些组成部分通常安装在一台计算机上。到80年代和90年代早期,这些组成部分往往被安装在同一个局域网的不同计算机上,它们可能在一个建筑的不同房间里或在多个建筑物里,形成分布式GIS。在WebGIS中,这些组成部分进一步分离,客户端和服务器可以天各一方。随着Web服务和聚合等技术的出现,一个客户端可以使用一台服务器的数据和另一台服务器的分析功能,这使得GIS的各组成部分更进一步地被分离了。
WebGIS具有丰富的功能,可以用于很多行业。但目前的WebGIS应用潜力还远没有被挖掘出来,这意味着WebGIS蕴藏着很多机遇。
从理论上讲,WebGIS可以实现GIS的全部功能,可以在互联网上实现地理信息的收集、存储、编辑、处理、管理、分析、共享和可视化等。现阶段应用较多的主要功能包括以下几个方面。
(1)地图查询:在线地图是WebGIS最常见的形式和最常用的功能,可以说是WebGIS的门面。地球上的每个地物都有属性数据,可以进行空间查询(如这里是什么)和属性查询(如书店在哪里)。
(2)数据采集:专业人员和业余用户都可以利用互联网来采集地理信息,利用移动客户端将野外采集或验证后的数据传输到办公室中的服务器和数据库,提高数据的现势性。近年来,自发式地理信息,即非专业人员自发贡献的地理信息,大都是通过Web来采集的。
(3)地理信息传播:WebGIS是一个传播地理信息的理想平台,政府机关、学术机构和商业部门长期使用这个平台共享空间信息。从早期的空间数据仓库、地理信息一站式门户网站,到目前的行业地理信息网站(如地质云、天地图)等,它们都允许用户搜索和接入数据,共享地理信息服务,促进各部门的合作,帮助用户充分利用现有的数据资源,避免数据的重新采集,这既降低了费用,又提高了效率。
(4)地理空间分析:WebGIS不仅是电子地图,它还提供许多空间分析功能,特别是那些贴近人们日常生活的重要功能。例如,量算地物的距离和面积、寻找最佳的驾车或公交路线、查找地址或地名的位置、利用邻近分析来查找最近的商店。政府、企业和科研机构也可利用WebGIS进行一些专业的空间分析。例如,利用化学物品泄漏扩散模型来计算出可能受影响的区域,并利用叠加分析来确定需要疏散的街区;在商业零售方面,选址模型可以帮助企业分析在哪里开设商店能产生最大的利润;在低碳和绿色能源方面,太阳辐射模型可以帮助公众估算在自己的房顶上安装太阳能面板所能产生的能量;基于已有案发地点的分布,公安部门能制作热度图,让公众知道哪里是高危险区,提醒公众注意安全;有些最佳路径分析还做了进一步深化,不仅考虑了起点和终点的距离与沿途道路的限速,还考虑了接送所要求的时间窗口、沿途的交通堵塞和桥梁限高等。这些应用说明了WebGIS功能可以针对现实世界中的实际需求进行量身定制,为用户提供具有针对性的服务,解决实际问题。
WebGIS可以应用在与地理有关的各行各业中,具有降低费用、提高效率和扩大影响等功能。本节简要介绍几种常见WebGIS应用类型,本书的其他章节提供了更详细的应用案例。
WebGIS不仅创建了一些新的商业模式,而且重塑了许多已有的商业模式。
WebGIS所带来的显著的商业模式是基于地理位置的广告服务,这种模式被谷歌、微软和百度地图等采用,这些公司针对用户所搜索的关键字和位置来显示广告赞助商的商品和服务。这种广告发布方式比传统的电视和广播等广告模式更精确,有更高的回报率。从广告赞助商的角度来看,这种按点击量来付费的模式能让广告赞助商更好地了解广告的实际效果,更好地控制在广告上的投资。众所周知,这种商业模式已经为商业公司带来了巨大的财富。
通过软件即服务的商业模式,WebGIS本身也能作为商品来销售。例如,在线商业分析(Business Analyst Online, BAO)就是一种基于WebGIS的商品。BAO基于大量且详细的人口和消费等商业数据,利用商业分析模型,帮助用户进行贸易区分析、商店选址和寻找潜在客户群的分布。BAO按使用量收费,用户也可以按年来订购。采用这种软件即服务的商业模式,让很多中小型企业也能用得起GIS,它们不需要购买自己的GIS硬件、软件和数据库就能进行自己所需要的商业分析,从而得到图文并茂的商业报告,并以此制定商业决策。
许多企业都在使用WebGIS进行战略规划、市场营销、客户服务和日常管理,以期提高效率,取得竞争优势。从前,只有少数拥有桌面GIS和GIS专业人员的大型企业才能进行GIS分析。现在,越来越多的企业,包括很多小型企业,都能使用GIS。WebGIS的用户界面易于使用,它可以直接由管理人员、普通员工和客户直接操作。几乎所有的商业网站都有诸如“商店查找”或“分店查找”网页,以地图的方式显示自己的位置,帮助顾客迅速查到要去的商店并能取得行车路线或公交路线。自来水公司能整合WebGIS和客户关系管理(Customer Relationship Management, CRM)数据库,把那些抱怨家里水压不足的客户标注在地图上,分析管线可能出现问题的地方,找到需要维修的地点和需要关闭的阀门,把这些信息和地图发送到外业维修人员的手机上,以尽快解决这些问题,从而获得较好的客户满意度。中国邮政利用WebGIS来实时跟踪车辆、监控车辆状态,为邮政物流提供位置服务和路径分析服务,缩短物流时间,降低运输成本。
电子政务一词于20世纪90年代初被提出,许多国家通过立法、监管和财政激励等手段积极推动电子政务的发展。很多政府事务都与位置相关,地理位置也就成为政府业务的基本框架,这使得WebGIS成为电子政务的重要组成部分。由于能够提供易于理解的在线地图,WebGIS成为一种极具亲和力的沟通渠道。凭借其具有的分析能力,WebGIS能够为决策者提供广泛的地理智能和辅助决策方案。许多已经长期使用桌面GIS的政府部门也正转向使用WebGIS,以便充分利用WebGIS在交流和协作方面的优势。
WebGIS为公共信息服务提供了诸多便利,可以增加公众知情权,从而提高政府工作的透明度。例如,地质云是中国地质调查局主持研发的一套综合性地质信息服务系统,其首页如图1.10 所示。地质云面向社会大众、地质调查技术人员、地学科研机构、政府部门,提供了丰富的地质信息服务。2021年6月,地质云3.0在中国地质调查局正式宣布上线服务。地质云3.0面向地质调查技术人员,提供了云环境下智能地质调查工作平台,创新了地质调查工作新模式;面向地质调查管理人员,提供了云环境下“一站式”综合业务管理和大数据支持下辅助决策支持,实现了地质调查项目、人事、财务、装备等的“一站式”服务;面向各类地质调查专业人员,提供了基础地质、矿产地质、水工环地质、海洋地质等多种专业数据共享服务;面向社会大众,提供了多种地质信息产品服务。
图1.10 地质云首页
现代科研往往涉及海量数据和密集计算,网格计算通常被认为数字化科研的主要平台,但网格计算需要复杂的中间件,有较高的学习门槛,大多数研究人员很少有机会直接使用网格计算。WebGIS和云计算为数字化科研提供了计算能力强大、数据丰富、成本低廉、容易使用的基础设施。
目前,WebGIS已经日益成为一个巨大的分布式数据库、强大的计算平台和一个协同实验室。直接连接WebGIS的传感器和实时数据都在不断地增多,越来越多的机构把它们的地图服务、空间分析服务发布到了“云”中。根据自己的科研需求、采用聚合技术,科学家们可以把这些丰富的资源整合起来,支撑自己的研究。WebGIS入门容易、成效明显,已经成为数字科研的新平台。
“六何”法[英文中所说的5个“W”和1个“H”,即何人(Who)、何事(What)、何时(When)、何地(Where)、为何(Why)和如何(How)]是人们日常生活中所遇到的基本问题,其中“何地”是重要的一个方面。人们经常会遇到诸如到哪里吃饭、到哪里入住、到哪里购物、如何从这里到那里等问题,这些问题都与GIS有关。传统上,教育界认为,一个人在社会上生存需要学会三项基本技能,即“3R”[读(Read)、写(Write)和算术(Arithmetic)]。近年来,空间认知能力被认为是继“3R”之后的第4个“R”,即第4项基本能力。而WebGIS,特别是在线地图和手机地图,是人们了解自己生活空间和获得空间认知能力的重要手段。
互联网和万维网赋予了人们选择时间的自由度(互联网和万维网通常都是7×24小时开放的),也使人们摆脱了距离的羁绊,它们本身所具有的全球性、低成本、高效性和开放性等特点也赋予了WebGIS很多优点。
(1)传播的广远性:对开发者来说,您可以向全世界展示您的WebGIS;对使用者来说,您可以坐在家里通过浏览器或其他软件来使用全世界的WebGIS(被防火墙或其他安全措施隔绝的系统除外)。WebGIS的传播具有全球性。
(2)用户的众多性:一般来说,一个传统的桌面GIS在某段时间内只能供一个用户使用,而WebGIS能支持多个用户,甚至是成千上万的用户同时使用。这是WebGIS的一个优势,同时也要求WebGIS具有较高的性能和扩展能力。
(3)较好的跨平台性:WebGIS的主要客户端是Web浏览器,而大多数操作系统都集成了Web浏览器,因此对于桌面应用,基于Web浏览器的WebGIS有较好的跨平台性。但需要注意的是,当前由于移动平台操作系统的多样性和各个平台所提供的编程接口不同,移动GIS的跨平台性相对较差。
(4)平均费用的低廉性:对于一个机构而言,它不必为每个用户购买一套桌面GIS,可以构建一个WebGIS,供多个用户分享。这样,平均费用往往比前者低廉。对最终用户来说,大量的电子地图网站、政府部门提供的公共信息服务地图网站等WebGIS服务都是免费的。
(5)对最终用户的易用性:桌面GIS的主要用户是那些经过多年培训和有多年经验的专业人员,而WebGIS的用户往往是非GIS专业人员和广大的网民。这些大众化的用户没有受过专业的培训,他们需要WebGIS简单易用,像傻瓜相机一样,同时又要有好的用户体验。他们的期望甚至是“如果我不知道怎么使用你的网站,那就是你的错”。这就要求WebGIS的开发者注重人性化的操作界面设计,以降低使用的复杂性。
(6)更新的统一性:如果一个桌面GIS有了新的版本或数据,则需要在每台计算机上安装。WebGIS则不同,管理员只需要对服务器进行更新,那么用户下次使用WebGIS时,客户端大都会自动更新,得到最新的程序和数据。因此,在很多情况下,WebGIS能降低系统维护的复杂性,非常适合那些对时效性要求较高的应用,如应急管理等。
(7)应用的广泛性:针对人们五花八门的需求,政府机关、商业机构和一些爱好者开发出了各种各样的WebGIS,如传染病的分布、各地环境污染源的分布、餐馆书店的位置、网络交友、照片和视频地图、新闻位置图、旅游图集,甚至公共洗手间的分布图等。WebGIS助长了“新地理学”的发展。“新地理学”是指非专业用户因个人或公共目的使用地理学科技和工具,这一现象突破了专家与非专家之间的传统障碍,促进了公众的参与和GIS的社会化。
以上特点为WebGIS增添了很多优势,同时也对WebGIS的开发提出了相应的要求,如用户要求WebGIS具有稳定性和伸缩性。有些WebGIS在只有一个用户时运行很快,而有3个用户时就会变慢,有5个用户时就会死机,这就不能很好地支撑多用户同时使用WebGIS。对最终用户的易用性要求开发者要注意界面的人性化设计,顾及非GIS专业人员的操作能力和使用习惯。
GIS技术经过几十年的发展,已经逐步进入了IT主流,WebGIS的发展更进一步拓展了其应用领域,使其能够在更广泛的领域为更多的用户提供空间信息服务。但从WebGIS的应用现状可以看出,WebGIS技术远未成熟,仍面临着一系列的技术瓶颈和挑战。
由于互联网的网络带宽及硬件设备限制,海量的空间信息数据的传输速率已经不能满足用户的服务需求,再加上WebGIS要处理大量的图形、图像、三维数据,使得访问WebGIS的速度越来越慢,已经构成了WebGIS体系模型的技术瓶颈。在现有的网络带宽和硬件设备条件下,如何建立快速的响应和传输机制,如何向用户提供多样化的、直观易懂的图形用户界面,动态地、客户化地表现地理空间数据成为WebGIS发展的难题。
在WebGIS中结合三维可视化、VR与AR等技术,以及游戏引擎技术,才能完全再现地理环境的真实情况,把所有的地理资源、管理对象都置于一个真实的三维虚拟地理环境中,真正做到管理意义上的“所见即所得”。WebGIS首先面临的是三维模型在网络上渲染速度慢的问题。三维模型在网络上的渲染需要大量的计算资源,如果网络带宽不足或者服务器性能不够强大,就会导致渲染速度慢,用户体验不佳。网络上渲染的图像质量受网络带宽和服务器性能的限制,可能会出现模糊、失真等问题。其次面临的是兼容性问题。不同的浏览器和操作系统对于三维模型的支持程度不同,可能会导致渲染效果不一致或者无法正常显示。最后面临的是成本问题。在网络上渲染三维模型需要购买服务器和计算资源,成本较高,对于个人用户和小型企业来说可能不太现实。如何通过Web按协作方式进行三维模型的设计、展示、渲染和发布,从而进一步提高生产效率并降低成本成为WebGIS发展的难题。
基于Web的现实世界三维模型渲染数据需要上传到服务器中进行处理,这就存在数据泄露的风险。如果服务器的安全性不够高,就可能导致三维模型数据泄露或者被篡改。在网络上渲染三维模型时,用户需要下载渲染软件,这就存在恶意软件的风险。如果用户下载的软件存在恶意代码,就可能导致用户计算机被感染,造成数据泄露、系统崩溃等问题。三维模型在网络上渲染时,可能会涉及版权问题。如果用户上传的三维模型侵犯了他人的版权,就可能引起法律纠纷。
目前,WebGIS在大众化市场和专业化市场都有大量的空白领域有待人们去探索和开发,而且这两类市场可以相互补充。大众在线地图和手机应用为广大用户提供了地理可视化和常用的分析功能,展现了WebGIS的巨大商业价值和广泛的应用前景。随着空间认知能力的增长和对WebGIS潜能认识的加深,人们会逐步提出一些更深入的与地理空间有关的问题。这些问题往往需要专业WebGIS来解决,从而产生了新的专业需求,为专业化市场带来新的机遇。
GIS专业人员在开拓WebGIS的潜能方面具有重要的作用。GIS专业人员肩负着提供权威地理信息、设计高质量的可视化工具、构建专业的分析模型、使WebGIS成为本单位业务系统的有机组成部分、构建地理信息共享平台等任务。就教育工作而言,WebGIS是一种新的、容易使用的和有趣的教学工具,它能够培养学生从区域和全球的角度思考问题,有助于提高他们的空间思维能力和解决现实世界实际问题的能力。今天的学生可能就是明天的决策者、GIS设计师和GIS用户,培养他们的空间认知能力意义重大,可以影响未来社会很多决策的制定。
19世纪是铁路的世纪,20世纪是公路的世纪,21世纪是信息高速公路的世纪。随着万维网的继续壮大和普及,GIS的应用和影响将继续扩大,WebGIS将继续迅猛发展,渗透到人们工作和生活的方方面面,为人类社会的发展做出巨大贡献。
按GIS软件的性质可将其分为商业软件和开源软件,按应用类型可将其分为桌面端、服务器端、云端、移动端、Web端、数据库软件、工具软件等软件。表1.1列出了常见的GIS软件。
表1.1 常见的GIS软件
下面简要介绍几种常用的GIS软件。
QGIS是基于Qt、使用C++开发的一个用户界面友好、跨平台的开源版桌面端地理信息系统,可运行在Linux、UNIX、Mac OS X和Windows等操作系统中。QGIS支持四种类型的GIS图层,分别是矢量数据图层、栅格数据图层、PostGIS数据图层和WMS(Web Map Service)数据图层。QGIS继承了其他的开源GIS软件包,如PostGIS、GRASS和MapServer等,可以向用户提供丰富的功能。用户也可以通过Python编写的插件来扩展QGIS的功能。
ArcGIS是ESRI推出的一个由共享GIS组件组成的可伸缩的平台,无论桌面端、服务器端,还是Web端,都可以为个人用户、群体用户提供GIS的功能。ArcGIS包含了一系列GIS框架,如ArcGIS Desktop、ArcGIS Engine、ArcSDE、ArcIMS、ArcGIS Server、ArcPad、ArcGIS Online等。
SuperMAP是北京超图软件股份有限公司研发的一款国产化的GIS软件,是数字中国、企业数字化、数字孪生、智慧城市的重要技术底座。SuperMap GIS 11i(2022)包含云GIS服务器、边缘GIS、服务器端GIS等多种软件产品,提供离线部署和在线服务(SuperMap Online)两种交付方式。
ZGIS是武汉智博创享科技股份有限公司研发的一款国产化自主知识产权的专业GIS平台,可帮助用户打造一套全新的系统开发模式,提供快速开发和定制企业级的应用系统及解决方案,广泛应用于地质矿产、环保、市政、管网、数字乡村、智慧城市等领域。ZGIS平台针对不同的用户终端和部署方式提供了多个平台产品,如ZGIS Desktop(桌面端平台产品)、ZGIS Web(浏览器端平台产品)、ZGIS Mobile(移动端平台产品)、ZGIS Server(服务器端平台产品)、ZGIS 3D(三维GIS平台产品)、ZGIS云端产品、ZGIS CIM平台产品,以及结合行业应用的ZGIS应用平台系列软件,如智慧地质应用平台、智慧环保应用平台、智慧管网应用平台、智慧市政应用平台、智慧城市应用平台等。
ZGIS专注于行业应用及解决方案,能够为用户提供强大的集成开发框架、丰富多样的功能插件、完整的业务数据模型、精美的软件界面,通过“框架集成插件,插件聚合数据,数据嵌入界面”的方式可便捷地搭建和定制应用系统,降低GIS应用系统的开发门槛,减少人力、财力、物力等资源投入,真正做到让用户花费较少的投资,就能取得所期望的效果和回报。
MapGIS是武汉中地数码科技有限公司开发的、应用于地质、国土等领域的国产化GIS软件,采用面向服务的设计思想、分布式多层体系结构,实现面向空间实体及其关系的数据组织、高效海量空间数据的存储与索引、大尺度多维动态空间信息数据库、三维实体建模和分析,具有TB级空间数据处理能力、可以支持局域网和广域网环境下空间数据的分布式计算、支持分布式空间信息分发与共享、网络化空间信息服务。
OpenLayers是一个用于开发WebGIS客户端的完全免费的开源JavaScript包,为互联网客户端提供强大的地图展示功能,包括地图数据显示与相关操作,并具有灵活的扩展机制。目前OpenLayers已经成为一个拥有众多开发者和社区的成熟、流行的框架。OpenLayers支持的地图来源包括谷歌地图、OSM、必应地图、MapBox等。OpenLayers可以将以OGC服务形式发布的地图数据加载到基于浏览器的OpenLayers客户端中进行显示,包括GeoJSON、TopoJSON、KML、GML、Mapbox地图矢量切片和其他格式的矢量数据等;支持WebGL和HTML5的最新功能,可构建轻量级的应用;支持简单的CSS样式化地图控件应用,可无缝对接不同级别的API或使用第三方库来定制和扩展功能。
在操作方面,OpenLayers除了可以在浏览器中帮助开发者实现地图浏览的基本操作,如放大、缩小、平移等常用操作,还可以进行输入面、输入线、选择要素、叠加图层等不同的操作,甚至可以对已有的OpenLayers操作和数据支持类型进行扩充,为其赋予更多的功能。同时,在OpenLayers提供的类库中,Prototype.js中的部分组件可以为地图浏览操作的客户端增加Ajax效果。
GeoServer是OGC服务器规范的J2EE实现。利用GeoServer,用户可以方便地发布地图数据,对地图数据进行更新、删除、插入等操作,比较容易地在用户之间迅速共享地理空间信息。GeoServer兼容WMS和WFS特性;支持PostgreSQL、Shapefile、ArcSDE、Oracle、VPF、MySQL、MapInfo等软件;支持上百种投影;能够将网络地图输出为JPEG、GIF、PNG、SVG、KML等格式;能够运行在任何基于J2EE/Servlet容器上;嵌入了MapBuilder,支持Ajax的地图客户端OpenLayers。
GeoServer可以利用WMS把数据作为地图/图像(Maps/Images)来发布,也可以直接利用WFS来发布实际的数据,同时也提供了修改、删除和新增等功能。
MapServer是一个基于胖服务器/瘦客户端模式的实时地图发布系统,客户端发送数据请求时,服务器实时地处理空间数据,并将生成的数据发送给客户端。MapServer的核心部分是采用C语言编写的地图操作模块,MapServer本身又依赖于一些开源的或免费的库,如Shapelib、FreeType、Proj.4、GDAL/OGR。MapServer利用GEOS、GDAL/OGR对多种矢量和栅格数据提供了支持,通过Proj.4共享库可以实时地进行投影变换;另外,MapServer还集成了PostGIS和开源数据库PostgreSQL,可对地理空间数据进行存储和SQL查询,并且遵守OGC制定的WMS、WFS、WCS、WMS、SLD、GML和Filter Encoding等一系列规范。
PostGIS是一个开源程序,是对象关系型数据库系统PostgreSQL的一个扩展,它为对象关系型数据库PostgreSQL提供了存储空间地理数据的支持,是目前开源空间信息软件领域中性能最优秀的数据库软件之一。构建在PostgreSQL上的空间对象扩展模块PostGIS,使PostgreSQL成为一个真正的大型空间数据库。PostGIS相当于Oracle的Spatial,提供了丰富的空间信息服务功能,如空间对象、空间索引、空间操作函数和空间操作符,能够进行空间数据管理、测量与几何拓扑分析。PostGIS遵守OGC规范,提供了OGC要求的基本要素类(点、线、面、多点、多线、多面等)的SQL实现参考。