论文部分内容阅读
GIS服务是GIS与Web服务技术相结合的必然产物,被广泛用于实现分布式环境下跨平台、跨语言的异构地理空间数据共享和地理处理互操作。然而,单个GIS服务所能提供的功能毕竟有限,无法满足广大互联网用户的所有业务需求。因此,有必要将现有GIS服务按需聚合,动态生成新的增值服务来完成用户指定任务。当前,对于GIS服务聚合的研究,主要还存在以下不足:面对海量的GIS服务资源,缺乏一个高效的搜索方法辅助用户快速定位所需服务;缺乏以用户需求为中心,由轻量级客户端来动态定制GIS处理服务聚合流程的研究。REST (Representational State Transfer,表述性状态转移)式GIS服务的出现为GIS服务的客户端动态聚合提供了新的契机。为了解决以上问题,以REST式GIS服务资源为支撑,本文尝试系统地研究基于轻量级客户端实现GIS服务动态聚合所涉及的理论、方法和体系架构等方面的问题。本研究的主要工作和成果有以下六个方面:一、REST式GIS服务及服务的元数据描述标准。本文深入研究了REST式GIS服务的理论基础和重要特性,同时研究了地理空间元数据标准现状,指出了对于某特定应用现有标准过于复杂、难以使用,以及缺乏描述GIS处理服务标准的不足。在此基础上,重点针对REST式GIS服务统一连接器接口定义的特点,继承现行国标,分别设计并给出了REST式GIS数据服务元数据标准和REST式GIS处理服务元数据标准。二、GIS数据服务量化搜索的个性化定制框架。在GIS数据服务搜索中,本文引入“匹配度”来量化GIS数据服务与用户需求的匹配程度,基于相似理论设计了内容匹配度计算方法,基于拓扑学理论设计了范围匹配度计算方法。引入“有效服务个数”来加快匹配收敛,提高匹配效率;引入“匹配度阈值”来筛选符合需求的结果。同时,为用户提供了灵活的框架来定制个性化的搜索机制。三、GIS处理服务搜索算法的改进。在GIS处理服务搜索中,针对目前利用图搜索算法普遍存在的模型建立、依赖图构造等前期工作任务繁重,并且当GIS处理服务有多个输入、多个输出时难以搜索的不足,本文提出了广度优先逆向共享剪枝与/或树算法,有效提高了服务搜索的效率,同时解决了服务搜索过程中用户需求多输入/多输出以及GIS处理服务多输入/多输出的问题。本算法的改进主要有3点:1)构建逆向与/或树,将网状的与/或图转化成树状;2)将多种类型的复杂服务规约为两类简单服务的组合,简化问题求解;3)引入共享树的概念,提出删除与子树的方法来提高搜索的效率。四、简化构建GIS处理服务复杂输入参数的方法。GIS处理服务通常需要获取分散存储于互联网各节点且结构各异的地理空间数据作为服务的输入,然而通过服务器端底层读取的方式获取分布式异构地理空间数据并构建为GIS处理服务所需的输入参数通常需要大量的编码工作,从而导致GIS处理服务的使用成本偏高。针对此问题,本文提出利用复制地理空间数据的处理服务来简化地理空间数据作为输入参数的构建,将对地理空间数据的底层读取统一转换为请求GIS处理服务并获取执行的结果,从而实现基于脚本级编码构建GIS处理服务输入参数的聚合应用,降低系统开发难度,节约编码时间。同时,由于避免了对存储地理空间数据的服务器、数据库用户名、密码等信息的发布,在一定程度上有效地维护了数据的安全性。五、REST式GIS服务聚合总体框架设计及聚合平台原型系统实现。以聚合思想为指导,以REST式GIS服务为支撑,研究了REST式GIS服务聚合平台的体系架构,明确了架构中各个层次的功能以及相互之间的关系。同时从数据流程、用户角色、功能设计、界面设计四个角度进一步分析、设计了聚合平台系统框架,为聚合平台的设计实现提供了总体框架和顶层指导。在总体框架的指导下,计算机实现了本文提出的GIS服务描述与注册,改进型GIS服务搜索算法和聚合执行模板,构建了REST式GIS服务聚合平台实验系统。六、从服务提供者和服务使用者的角度阐述了REST式GIS服务聚合平台的具体应用,并结合上海市绿化林业地理信息系统建设工作设计了典型的应用案例,进一步验证了本文相关研究的可行性和实用性。