论文部分内容阅读
如何使网络上不同的空间信息系统能够在不进行数据转换、不知道数据位置、不需要API和数据库直接访问等操作、甚至不知道数据所有者的情况下,快捷、方便地共享数据,并进行集成应用,是空间信息技术领域的热点问题。首先,针对空间数据共享发展现状和存在的问题,总结了传统的空间数据共享方法和难点。WebService提供了一种在更高层次、更广范围上解决空间数据共享的方法,其提供者只需将数据或操作的服务暴露出来,使用者不必了解它的内部结构,用何种技术何种语言实现,只需根据服务说明(WSDL)引用该服务,就可将其集成到自己的应用中。REST风格则是一种互联网超媒体分布式系统架构,通过提供清晰的关注点分离、隐藏资源的底层实现和通信机制,降低了架构的复杂性,以客户——服务器、无状态、缓存、统一接口、分层系统、按需代码等约束在统一定义的REST组件接口下,传输自描述的数据——表述,从一切皆资源的角度去架构系统。在此基础上,提出一种基于Web Service和REST混合架构的通用空间数据共享模型,以其独特的抽象、松散耦合和粗粒度的特点,根据服务请求通过分布式网络对松散耦合的应用群件进行部署、组合和使用。其次,分别对基于OpenGIS的面向服务的空间数据共享模式和REST风格的面向服务的空间数据共享模式进行了解释、描述、分析和评价。在OpenGIS框架下,对基于WMS、WFS、WCS、WPS等规范的空间数据共享进行了架构设计和实现过程的阐述。构建了REST风格的面向服务的空间数据共享架构。再次,引入SOA架构模式(Pattern),其最重要的特点是把服务的实现和接口分离,将应用程序的不同功能单元——服务(Service)和资源(Resource),通过服务间定义良好的接口和契约(contract)联系起来。对SOA的主要构成要素SOAP、WSDL、UDDI等进行简要分析和研究,进一步得出基于WebService的空间数据共享机制。分析REST风格,提出REST风格的空间数据共享机制。在此基础上,提出了一种基于WebService和REST混合架构的面向服务的空间数据共享模型。为空间数据共享研究提供了一种新的方法和思路。之后,对主流数字地球平台Google Earth和World Wind进行了介绍和对比,在对本地数据应用进行简要介绍后,提出了Google Earth和World Wind网络数据扩展应用的解决方案。基于World Wind Java SDK和AJAX对空间数据共享客户端进行了开发实现。最后,基于GeoServer平台,建立了以Open Source软件为主,兼容GeoMediaWebMap、ArcGIS Server、ArcIMS、MapServer等地图服务器的空间数据共享实验平台。在多种客户端下分别对REST和WebService进行加载,并进行了集成加载测试。验证结果表明,该模型与架构能够有效解决空间数据共享问题。本文的创新在于,提出了一套基于OpenGIS的面向服务的空间数据共享模型和架构;提出了REST风格的面向服务的空间数据共享模型和架构;提出了WebService、REST、数字地球平台集成的空间数据共享模型和架构,使空间数据的提供者和所有者的关注点由数据转向服务和资源,使得空间数据共享在更高的层次得以实现;设计和开发了数字地球平台客户端,对面向服务的空间数据共享集成服务进行了试验。可供科研工作者、开发者、空间数据提供者及普通用户借鉴和尝试,推动空间数据共享研究的理论完善并向纵深发展。