分享

WebGIS与SNS技术结合实现 WebGIS应用的新形态

 PKWorld 2010-05-26
这是2009年写的文章,当时很想自己做一个实现,可是没时间,团队也没有。现在LBS非常火热,个人预计会成为GIS未来5年以内的大趋势。

  WebGIS与SNS技术结合实现 WebGIS应用的新形态

  (武汉大学)

  摘要:伴随着互联网技术逐渐改变世界,社会对于地理信息系统万维网服务WebGIS的需求,包括地理信息数据查询、检索等也急剧增加。同时,社会性网络服务SNS(Social Networking Services)的逐渐成长,给互联网世界带来了新的焦点。有效结合WebGIS和SNS网站的技术特点,将会更大程度的发掘地理信息系统的潜力,可能会带来地理信息系统的发展高潮,使得地理信息系统能够进一步为全球用户提供更加便捷高效的服务。

  关键字:SNS;WebGIS;P2P;空间数据库

  引言

  WebGIS发展现状和前景

  地理信息系统自从20世纪60年代诞生以来,理论和技术逐渐完善,并且应用也渗透到水利、电力、国土等国民经济领域的诸多部门,成为信息产业的重要组成部分。在以网络技术为代表的相关技术的发展和具体应用需求的推动下,WebGIS应运而生,并且成为地理信息系统的重要发展方向之一.[1][2]WebGIS利用互联网技术,在Web页面中进行地理信息数据的传输、显示、存储、分析、查询等操作。这样就使得Internet用户可以直接通过浏览器获得所需空间数据操作,具有非常广泛的应用前景。[3]

  SNS网站发展现状和前景

  SNS网站是信息时代的产物,它一种社交服务性质网络,随着Web2.0诞生逐渐成长,具有广大的用户群是其主要特征,SNS提供给用户的主要服务是用户之间的互动,而不是网站本身的服务,因此具备广阔的市场空间和用户潜力。[4]

  研究意义

  WebGIS的应用一直是地理信息系统领域的难题,从传统的GIS到WebGIS是一次巨大的飞跃,真正意义上实现了让所有用户都可以使用的GIS方式。但是,实际上WebGIS究竟可以用在那些领域,怎么样发挥最大的作用还有许多探索的地方。主流的WebGIS产品都依旧还是沿着传统空间数据的路线在演变,和真正意义上的Internet并没有完全交融。比如很多地图检索服务依旧还是一个单独的服务,与Internet领域流行的博客、门户、社区等等都没有实现有效的协作。因此WebGIS的内在应用还有很大的发展空间。

  SNS即是社交网络服务,是最近流行起来的一种Internet服务形式,一方面它根据六度理论,实现用户之间的无限互联,另一方面它采用P2P技术,使得一些Web应用上实现了与服务器独立的分布式计算与存储功能,充分发掘了所有用户终端的计算和存储潜力。广义来讲,P2P技术甚至可以超过服务器模式的效率和功能。[5]

  以上的两种技术在互联网领域都在蓬勃发展,但是一直没有出现交集。而实际上,二者在应用中存在很多交集,广大的互联网用户群在日常生活中随时随地都需要使用地理空间信息,而不是仅限于地图服务;在社区网络服务中的用户互联可以使得空间信息的价值得到高度体现,用户可以根据与自己所需问题空间关系相关的用户群空间分布情况做出众多决定。包括大型的项目决策,中型的旅游路线决策,乃至小型的购物策略。数以百万计的庞大用户空间信息数据和相应的属性数据结合在一起,能够完全实现信息整合的目的,地理信息系统的功能就可以完全发挥出来。

  技术支持

  1) WebGIS技术概述

  WebGIS是Internet技术应用于GIS开发的产物。GIS通过WWW功能得到扩展,真正成为一种大众使用的工具。

  首先,WebGIS是建立在计算机网络基础之上的,一般情况下WebGIS应用于Internet,细节上依旧是依据互联网的所有相关协议。WebGIS的体系结构一般有两层结构和三层结构。[4]对应于客户端和服务器的角色不同,也有各种不同类型的数据处理方式。并且在具体实现上采用了更多的技术,包括多服务器技术、分布式存储计算技术、磁盘阵列技术、网络存储模式、分布式空间数据库系统、GML/SVG传输模型等等。相比于传统GIS来看,WebGIS的优点十分明显:面向大众,资源共享;分布式体系结构;建设投资少;操作简单;跨平台;协同性好,发布快,范围广。WebGIS的这些特点,保证了其必然会成为面向大众的最流行有效的GIS服务,并且服务于社会的各行各业。

  同时,市面上已经出项了相当多的WebGIS产品,典型的例子比如ESRI公司的ArcIMS和ArcServer(前者正在逐渐被后者取代),这些产品已经实现比较全面的空间信息处理和存储能力,但是总体来讲还有很大的提升空间。

  2) SNS技术概述

  SNS,即是Social Network Service,中文名称是社会性网络服务,一般指帮助人们建立社会性网络的互联网的应用服务。理论上依据了哈佛大学的心理学教授StanleyMilgram的“六度理论”。SNS使得用户成为Web的主体,极大地增加了用户交互程度,现在已经逐渐成为Internet领域的用户集聚中心。同时,SNS借鉴了分布式计算的理论,将所有的终端包括PC机、智能手机等的计算及带宽资源进行重新分配与共享,这些设备有可能具备比那些服务器更加强大的能力。因此,SNS网站可以不需要非常强大的服务器群,不需要处理用户之间的Web应用。所以,SNS可以高效的将所有用户连接起来,而不需要太多的服务器负载。而且,在Web 2.0的潮流下,SNS无疑是很有前景的,其主要特点用户交互使得网络运营模式的观念得到很大改善,不像传统门户网站基于内容浏览、搜索引擎基于广告和竞价排名等等模式,SNS让用户在页面自由交互,带来相当可观的价值潜力。[4,5]

  SNS的出现时间不长,但是已经取得巨大的影响,比如人人网。但是,SNS也存在诸多问题,包括模式上的、应用上的等等,这些都需要进一步发展。

  3) 研究路线

  本文将WebGIS的相关技术和SNS相关技术结合起来,从整体结构到实现架构上讨论二者结合的可行性和高效性。最终得到WebGIS的一种全新的应用模式,进一步将WebGIS应用到大众生活中,最大限度地实现WebGIS的强大功能。

  4) 系统预览

  基于WebGIS和SNS的结合体,这里称之为“WebGIS+SNS”,是一个运行于Web浏览页面的服务,通过给浏览安装相关插件,可以实现在在Web页面建立广泛的人际关系结构。同时,通过WebGIS技术,用户更多的接收到空间信息,比如用户可以选择人际关系的地理可视化分布。在地理可视化视图下,可以进行相应的WebGIS功能,具体来讲例如查询位于用户城市内的人际关系分布;指定好友的地理位置;指定空间位置正在进行的事件等等。这些功能可以完全与我们的日常生活紧密联系在一起,给全社会的不同类型,不同角色的用户带来便捷的体验,从宏观尺度的重大决策到微观尺度的微小问题都可以提供相应的辅助,让WebGIS真正服务于社会,服务于每一个人。[6,7]

  5) 系统结构设计

  系统结构是整个应用的核心问题,它关系着系统运行的稳定、高效、安全等等多方面问题,而对于WebGIS应用来讲,首先需要解决的就是基本结构。而基于三层结构的WebGIS的B/S服务模型是本系统采用的主要结构,其主要结构如下图(一):

  

  图(一)

  其中,在用户层的主要界面和软件就是浏览器以及WebGIS插件和SNS插件。由于相对应广大互联网用户对于地理信息数据的需求不同,一般情况下的空间数据操作应该直接在客户端完成,其优点主要是响应速度快,同时减轻了网络数据传输问题。一般采用的技术是ActiveX控件或者Java Applet等等。另一方面SNS插件的应用实现了独立于服务器的应用模式,发挥P2P技术的优势,在提高网络传输能力的同时,也使得服务器的负载大大减小,也提高了用户之间的交互程度。[8,9,10]

  服务器层的主要功能主要包括接受和处理用户操作请求和重新配置数据服务器。在WebGIS应用上,GIS服务器需要处理高级的空间信息请求,包括查询、分析、显示等等。它主要通过接受用户的GIS请求,处理命令以后在数据服务器中进行处理操作,将返回的结果返回给用户界面。Web服务器主要处理用户的一般性请求,即SNS页面的非空间信息请求。

  而且,在服务器层还应该添加负载调控服务器,由于众多SNS用户的实时操作以及空间数据的海量处理,必须通过负载调控来保证各个数据服务器的稳定高效运行。[11]

  最后,数据层的主要功能主要是空间信息数据的存储管理和非空间信息以及属性信息的存储管理。由于空间数据的特殊性,在存储管理过程中,必须使用特殊的方式,以达到需要的管理能力,这些内容在下面详细介绍。

  6) 存储与共享

  首先,空间数据的存储必须采用对应的空间数据库存储技术。

  现在主要的方法是利用关系数据库结合空间数据库引擎,比如ArcSDE+Oracle,采用面向对象方式存储空间数据类型。

  同时,采用分布式数据库结构,将不同类型,不同区域等数据分别存储在不同地区,不同网络的服务器上,可以保证更好、更安全的数据存储和更新,以及有效的数据恢复和组织查询等等。

  另外,利用并行数据库系统技术,可以数据访问速度得到极大提高。具体实现分别是Shared Memory、Shared Disk和Shared Nothing三种体系结构。但是一般采用SN模式,这样可以最大限度的减少各个服务器之间的访问冲突,保证了系统的稳定运行。

  还有,合理的空间数据库索引技术可以极大的提高获取数据的效率。采用B树或者R树是主流空间数据库的索引机制,同时一些更加深入的索引机制也可以引入其中,进一步提高访问空间数据库的速度。

  然后,具体的数据存储上采用磁盘阵列技术,对于不同类型的数据也可以分别采用RAID0、RAID1、RAID3、RAID5中的一种,提高数据恢复效率、数据安全和访问速度。而且可以采用SAN技术对指定数据进行区域网存储,它具备了可靠性、高性能、动态配置存储结构这三个特点。但是这种技术在通信和硬件上还存在问题,缺乏统一的标准。因此,将附网存储NAS和SAN结合使用是十分合适的解决方案,将NAS用于文件级别的数据访问,而SAN针对于海量、面向数据块的数据传输。

  其次,非空间数据库的存储管理可以借鉴空间数据库的存储管理,同样也是根据不同类型数据存储需求采用对应的解决方案,保证数据访问的效率和数据恢复安全性等等问题。

  7) 空间数据显示与发布

  在WebGIS实现中,需要考虑空间数据的传输和现实效率问题,传统的方式一般基于位图比如JPEG,BMP等等,没有考虑到数据安全和传输显示效率问题。更加合适的方案是采用GML、SVG和KML相关技术,在数据服务器和应用服务器之间进行高效的数据传输方式,以及在客户端进行高效的显示和基本图形图像操作。[12,13,14]

  采用以上技术的显著优点有:

  首先,它提高了异源异形数据的统一管理,由于不同类型空间数据的格式差异,不同服务器数据结构的差异,需要在整体传输设计中进行统一管理,因此采用GML、SVG和KML技术可以一定程度上解决这个冲突问题。

  另外,GML、SVG和KML技术属于广泛采用的XML标记语言子类,在数据交互上相比于传统数据类型更加灵活,可以接受基于XML的高级操作。 还有,SVG和KML能够在客户端得到更加优秀的显示效果,这也是系统用户界面的要求。

  8) P2P分布计算

  由于SNS的特色就是用户交互,而且具有海量用户群的交互,而P2P技术正好适应于这种SNS模式。P2P技术弱化了集中服务器的功能,重视网络中所有个体的作用,强调的是个体之间、系统之间、计算机之间的直接通信和联系,每一个参与者既是客户又是服务方,它与现行以中间件为主的分布式计算技术所采用的Client/Server模式有本质区别。因此,P2P技术是对以上B/S模式的良好补充,一方面减轻了服务器的负载,另一方面给了用户更多自由和交互。[15]

  P2P架构天生具有耐攻击、高容错的优点。多副本没有单点失效问题,部分结点或网络遭到破坏对其它部分的影响很小。

  综上,对于基于WebGIS和SNS结合的Web应用,可以采用P2P技术,更好的实现了整个网络的负载均衡,使得整个系统高效运转。

  9) 安全

  WebGIS和SNS这两个模式的Web服务形态本身就需要高度的安全措施确保系统和数据的安全。而且二者的结合使得这个问题尤其重要。

  具体来讲,按照整个系统结构的不同组成来说,系统安全问题主要在以下几个方面:

  用户数据安全:WebGIS+SNS用户不同于普通的WebGIS用户和SNS用户,普通WebGIS用户可以是匿名用户,不具备个人属性信息和空间信息,而普通SNS用户在空间信息上也一般比较匮乏,而WebGIS+SNS用户会同时具有属性信息和空间信息,十分接近于实名制模式,因为根据属性信息和空间信息是基本可以定位用户实体的。因此,在用户的隐私问题上要十分注意,解决方法也有多种:首先基于P2P技术实现了一部分独立于中央服务器应用,这样信息的传输分散在各节点之间进行而无需经过某个集中环节,用户的隐私信息被窃听和泄漏的可能性大大缩小,所有参与者都可以提供中继转发的功能,因而大大提高了匿名通讯的灵活性和可靠性,能够为用户提供更好的隐私保护;对于数据服务器的数据存储,采用磁盘阵列、分布式存储、防火墙技术等等,可以实现针对不同类型数据分别管理、灾难数据恢复重建等等安全问题,这些技术可以完全采用空间数据库安全措施,从而使得集中管理固定数据包括空间数据库和非空间数据库安全得到保障。

  总结

  本文从系统架构、实现细节、系统安全等多方面研究讨论了将WebGIS与SNS这两种Internet服务模式进行结合的可行性和实现方法,并且在整个实现过程中考虑到了二者的特色和优缺点,以及在结合过程中应该注意的问题和解决方法。相信随着WebGIS的广泛应用,对于SNS以及类似具备海量用户群的网络群体,将二者结合将会产生非常有趣甚至巨大的网络变革,而WebGIS则会进一步服务于社会,服务于每一个人。

  参考文献

  [1] 常乐,彭晖,陈宏盛. WebGIS应用系统设计[J]. 计算机工程. 2001.4.

  [2] 余志超,肖飞. 基于多层B/S体系结构的地理信息系统构件化研究[J]. 科技情报开发与经济. 2005.11.

  [3] 高强,吴晓亮. 基于WEB服务的WebGIS应用[J]. 维普资讯. 2007.

  [4] SNS.百度百科[DB/OL]. http://baike.baidu.com/view/8258.htm. 2009.12.20.

  [5] SNS互动百科[DB/OL]. http://www.hudong.com/wiki/SNS. 2009.12.20.

  [6] 罗英伟,汪小林,许卓群. 层次化WebGIS构件系统的设计与实现[J].计算机学报. 2004.2.

  [7] 余志超,肖飞. 基于多层B/S体系结构的地理信息系统构件化研究[J].科技情报开发与经济. 2005.11.14.

  [8] 王玉娥,刘晖. WebGIS及其体系结构研究[J]. 测绘工程. 2009.4.

  [9] 高春林,曾敬文. 基于J2EE的WebGIS结构研究[J]. 北京测绘. 2004.4.

  [10] 罗云,李华贵,方开红. 基于Internet的WebGIS体系结构的研究[J]. 维普资讯. 2006.10.

  [11] 王继周,付俊娥,李成名,林宗坚. WebGIS应用服务器数据调度优化策略研究[J].测绘科学. 2003.9.

  [12] 常小慧,李宏伟,黄海文,陈旭. 基于GML/SVG的WebGIS体系结构设计与实现[J]. 地球信息科学. 2006.12.

  [13] 周文生. 基于SVG的WebGIS研究[J].中国图像图形学报. 2002.7..

  [14] 刘旭军,关佶红. WebGIS应用中GML文档到SVG的转换[J]. 计算机应用. 2004.2.

  [15] 上海科技. P2P技术介绍[DB/OL]. http://www./c2.aspx. 2008.10.

  

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多