空间信息智能服务实现策略_彭兵
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2012年12月第10卷第6期
地理空间信息
GEOSPATIAL
INFORMATION
Dec.,2012Vol.10,No.6
空间信息智能服务实现策略
彭
兵1,李新广2,何
涛3
(1.广东省测绘技术公司,广东广州510075;2.河南工业大学,河南郑州450001;3.天津市测绘院,天津300041)
摘
要:处理功能的服务化和智能化是当前空间信息领域的主要发展趋势之一。围绕空间信息智能服务所涉及到的相关技
术,全面地研究了空间信息服务的实现方式、智能服务的用户偏好模型、服务效用度的度量方法等内容,为空间信息的智能服务提供了一套可行的解决方案。
关键词:Web Service ;WebGIS ;用户偏好模型;空间信息智能服务中图分类号:P208
文献标志码:B
文章编号:1672-4623(2012)06-0016-03
收稿日期:2011-04-11
项目来源:国家自然科学基金资助项目(40971243)。
近年来,地球空间信息学[1]
相关技术的快速发展为GIS 提供了海量的数据来源。随着空间数据量的急速膨胀以及人们对空间信息依赖程度的不断加深,空间信息数据量大、结构复杂、分布式异构存储等特征与空间数据实体及其处理功能的获取效率之间的矛盾日益突出,GIS 功能的服务化以及数据和功能获取的智能化为该矛盾的解决提供了一个可行的思路。本文围绕空间信息智能服务所涉及的相关技术,全面研究了空间信息服务的实现方式、智能服务的用户偏好模型和服务效用度的度量方法等内容,为空间信息智能服务的实现提供一套可行的解决方案。
1空间信息服务的实现
空间信息服务的构建是实现空间信息智能服务的基础,服务构建方式主要包括OGC WPS 的封装、GIS 功能组件的封装和Web Service 的聚合3种。3种构建方式分别适应于不同的情况:OGC WPS 的封装用于将现有遵循OGC WPS 标准并仅提供基于HTTP GET/POST 调用接口的服务转化为遵循W3C 标准的服务;GIS 功能组件的封装是对组件式GIS 功能进行封装,并以服务的形式提供给用户;Web Service 的聚合是对一些小粒度的空间信息服务进行聚合,生成能够完成较为复杂功能的粒度较大的服务。1.1
OGC WPS 的封装
空间信息服务的实现方式主要遵循OGC (Open Ge-ospatial Consortium )[2]标准和W3C (World Wide Web Consortium )[3]
标准,OGC 提供的WPS (Web Processing Service )[4]
标准是空间信息处理服务的主流实现方式之一。由于OGC WPS 大多仅实现基于HTTP GET/POST 调用方式的接口,难于采用成熟的Business Process Ex-ecution Language (BPEL )[5]进行大规模集成,从而导致大量的资源浪费。为了便于空间信息服务的集成,从而在更高层次上实现服务功能的重用与共享,文献[6]通过对OGC WPS 进行封装,生成对外提供遵循W3C 标准的Web Service 接口的代理服务,从而可以采用BPEL 进行聚合,形成粒度较大的组合服务。封装原理如图1所示,服务的功能由原始服务执行,代理服务向客户端提供遵循W3C 标准的服务接口,代理服务用于完成封装后的服务接口与原始服务的通信,它是新服务客户端和原始服务之间的沟通桥梁。
客户端
代理服务
SOAP 请求
SOAP 响应
原始服务
执行原始服务
SOAP 调用
转换成HTTP GET/POST 调用
HTTP GET/POST 请求
HTTP GET/POST 响应
图1OGC WPS 服务的封装原理
1.2GIS 功能组件的封装
目前,存在大量的GIS 组件产品,这些组件功能相互重叠,广泛分布于不同的地方,属于不同的拥有者,对这些组件进行封装和服务化,有利于资源的重用和共享。封装后的GIS 服务由两部分组成:①GIS 功能的组件层:用于实现GIS
的操作功能,主要由原始的GIS 组件构成,是GIS 服务的核心内容;②GIS 功能的封装层:用于实现GIS 功能的封装,将原始的GIS 组件功能以服务的形式提供给用户[7]。以ArcEngine 组件为例,若采用C#作为封装语言,实现空间数据从Shape 向Raster 格式的转化,封装后的Web Service 接口的代码如下:[WebMethod ]
public string ShapeToRaster (string InPath,int CellNumber,
第10卷第6期17
string OutPath)
{
GIS组件的操作代码
}
其中,参数InPath、OutPath分别为输入、输出数据的存储路径,CellNumber为栅格单元数,参数通过SOAP 消息传递,GIS的处理功能则由封装在服务中的GIS组件操作代码执行。
1.3Web Service的聚合
通过对原子服务(或粒度较小的组合服务)进行聚合,可以生成粒度较大的组合服务,以完成功能更为复杂的处理功能。恰当的服务聚合能够在一定程度上实现服务功能的重用和共享,从而减少构建同类服务所造成的重复劳动。文献[8]对服务组合的流程进行了详细研究,以原子服务smooth(平滑线状要素)和buffer(生成缓冲区)为例,构建组合服务smooth2buffer (依次执行线状要素平滑、生成缓冲区)的BPEL代码如下:
'**定义连接
…
'**事件接收活动,从客户端获取初始参数
partnerLink="smooth2bufferPL"portType="ns1: smooth2bufferPortType" variable="smooth2bufferRequest">
'**服务应答活动,返回处理结果
portType="ns1:smooth2bufferPortType"variable= "smooth2bufferResponse">
'**服务调用活动,在流程中调用伙伴服务
outputV ariable="smoothResponse"partnerLink=" smoothPL"portType="ns2:smoothPortType">
…
'**变量赋值活动,在流程中进行参数传递
…
…
2用户偏好模型
用户偏好模型用于描述用户的兴趣特征,它是空间信息智能服务的主要依据,系统根据偏好模型描述的信息向用户提供相应的服务[9,10]。在空间信息服务领域,根据提供服务内容的不同,用户偏好模型主要包括2类:①描述用户的空间数据需求特征:用户对空间数据的需求情况,根据模型的描述,系统针对性地向用户提供所需的空间数据。当前空间信息智能分发的用户偏好模型的研究主要集中于该种类型[9-11]。②描述用户的空间信息处理服务需求特征:描述用户对空间信息处理服务的需求情况,根据模型的描述,系统针对性地向用户提供所需的空间信息处理功能。目前,该类模型的研究尚未见到,因此本文集中研究第2类模型。
彭兵等:空间信息智能服务实现策略