WebGIS的诞生与优势?
WebGIS有运行速度快、效果好过渡平滑、可以将更多服务器端的计算放到客户端进行、页面无刷新的动态数据、满足巨大人数的访问要求、基于全范围的地图搜索等优势。WebGIS适用于大众的地图服务及海量矢量数据的业务应用。
来源:《搜索引擎WebGIS开发》1 WebGIS的诞生
Google Earth的推出,无异于在GIS业界引发了一次不小的地震,非GIS行业的这种准GIS服务模式,对所谓的专业GIS服务是个不小的冲击,首先感到有压力的就是WEBGIS业务了。在综合了Google地图服务各功能后,我们推出了“搜索引擎版WEBGIS”这一概念和产品。就提供地理底图的方式来讲,再也不是传统的方式——服务器端将矢量地图临时生成栅格图发给客户端,而是事先生成好栅格图,用户请求时不必做任何处理就可以即时发给客户端;就客户端的显示方式来讲,摒弃了传统的一张地图的显示方式,客户端采用多幅小图拼接的方式显示,总体看起来像是小图片填充一个大的栅格的效果。
2 WebGIS的实现
搜索引擎版WEBGIS一个很显著的特点就是它显示的某一范围的地图的比例尺是限定的,如武汉市的电子地图在搜索引擎版WEBGIS的组织方式下,用户可以看到的是1:2000,1:5000,1:10000……1:250000这样8个级别。从数学概念上来说,搜索引擎版WEBGIS提供的是一种离散比例尺的地图服务,而传统WEBGIS提供的是线性比例尺的地图服务。在组织数据的时候,对每一比例尺的栅格地图进行分割,将其按照某一尺寸(如256×256象素)划分为若干块,每一块都是一个独立的栅格图片。客户端进行显示的时候,先确定需要的比例尺(级别),显示范围(小的栅格图片的块数),再从服务器下载显示。
3 WebGIS的优势
3.1 速度快
传统的WEBGIS生成地图的运算是在运行时进行的,即用户每做一次缩放或漫游操作,都会引发服务器矢量数据转栅格数据的一次运算。而搜索引擎版WEBGIS则省去了这一过程,地图都已经事先生成好,客户机/服务器的一次交互主要是I/O过程,其效率可想而知。并且,搜索引擎版WEBGIS采用强客户端设计,大量的逻辑坐标转换和图片行列号的计算都放在客户端,服务器端主要处理图片资源的调度,更进一步的,处理查询,负担大大减轻了,其承载客户量,服务器速度和质量都有很大提升。
3.2 效果好,平滑过渡
与传统的WEBGIS的单图显示不同,搜索引擎版WEBGIS在客户端地图显示区显示的是多幅小图,并且都在客户端缓存起来。用户在进行漫游时,尚在显示范围内的地图直接从客户端缓存中读取,显示范围以外的地图再从服务器实时读取,这样就会实现一种平滑的过渡的效果;那么,如果用户想查看已经漫游过的区域时,仅仅需要从本地磁盘读取图片,显示就非常之快了。
3.3 将更多服务器端的计算放到客户端进行
搜索引擎版WEBGIS采用强客户端设计,大量的逻辑坐标转换和图片显示拼接的计算都放在客户端,服务器端主要处理图片资源的调度,更进一步处理查询等复杂操作,负担大大减轻了,其承载客户量,服务器速度和质量都有很大提升。解决了超大矢量地图显示慢的问题。服务器端实时地显示一张大数据量的矢量地图(如上G的矢量数据)肯定是很消耗资源和时间的,即使是对显示进行了优化,如抽稀地图要素。在搜索引擎版WEBGIS中,这种耗时的工作在前期的数据组织阶段就已经完成。在站点运行过程中,对于同一窗口范围大小的地图,几个G的矢量数据处理出来的图片和几十K数据处理出来的图片大小是差不多的,显示起来也是同样的速度。
3.4 在传统B/S结构中增加AJAX ENGINE层,体验页面无刷新
与传统的Web应用开发方式比较,搜索引擎版WEBGIS在浏览器端添加了一个层---Ajaxengine,由用户产生的页面事件交由这个引擎处理,它负责向服务器发送请求,服务器传回的是业务数据而非HTML,引擎接受之后,进行渲染,通过浏览器的解析在页面上显示出来。也就是将事件监听与页面渲染的工作交给了浏览器,而后台服务器只负责业务逻辑的处理。在Ajax engine方式下,HTTP基于请求/响应的范式仍然没有变化,但是由于有XmlHttpRequest对象(Ajax engine的核心)的支持,我们不需要像以前那样将每一次请求发到服务器后,由服务器解析请求再进行事件发配,之后返回刷新用的HTML页面。在新的方式下,由于事件的监听和处理在浏览器内部实现,它的反应周期可以被缩短,事件的处理力度可以更方便的做到更细,而且由于支持异步方式发送Request请求和接受Response响应,
用户事件的控制有了更大的灵活性。
3.5 能够满足巨大人数的访问要求
传统的WEBGIS生成地图的运算是在运行时进行的,即用户每做一次缩放或漫游操作,都会引发服务器矢量数据转栅格数据的一次运算。而搜索引擎版WEBGIS则省去了这一过程,地图都已经事先裁剪好,用户执行操作后,服务器的任务就是选择地图传给客户机,客户机/服务器的一次交互主要是I/O过程,这样大大减少了服务器端的负荷,新技术的采用能够满足大用户量的同时访问,经测试表明,一台普通的PC机就可以承担每秒上千次的访问。
3.6 基于全国的地图搜索系统
搜索引擎版WEBGIS另一个重要特点是实现全国范围内的地图搜索和信息显示。相比与以往的基于城市级的WEBGIS系统,搜索引擎版WEBGIS能够让用户在全国甚至全球范围内进行GIS方面的各类查询,实用性更加广阔。搜索引擎版WEBGIS主要包括以下功能:
- 城市地名搜索:例如选择‘湖北’的‘武汉’,然后直接显示武汉市的城市地图;
- 全国性的信息点搜索:例如在‘武汉’范围内搜索‘酒店’,可以直接显示武汉市内酒店列表,供用户选择;
- 基于全国范围的路径分析:例如分析从‘北京’的‘天安门’到‘武汉’的‘黄鹤楼’的路径,系统会给出最安全可行的自驾车路线;
- 市内公交路线搜索:例如搜索‘武汉’市的‘黄鹤楼’到‘中山公园’的乘车路线。
以目前的眼光来看,搜索引擎版WEBGIS 可以在两个方面有其突出优势。一是面向大众的地图服务,这种服务的要求不是很高,但用户量大,要求显示速度高;二是海量矢量数据的业务应用,这种应用如果采取原先的方式,地图显示效率难免会出现问题,可以针对具体业务需求定制显示级别更为详细,查询分析功能更强的搜索引擎版WEBGIS 应用。