由于SOA能够响应业务用户快速多变的业务需求,使得人们能通过Web服务实现资源共享,面向SOA的GIS应用也逐渐得到发展。SOA最重要的特点是把服务的实现和接口分离,用发现、绑定和执行模式代替软件组件之间的紧密耦合方式,从而实现可以跨平台、跨网络、跨语言地被多种客户端调用,并具备服务聚合能力以集成来自其他服务器发布的应用服务。而Service GIS技术能按照一定规范把地理信息系统的全部功能以服务的方式发布出来。因此,为了适应矿区可持续发展空间信息服务的要求,这里将SOA和服务式GIS技术结合来设计系统的框架,该框架能使空间数据库技术、元数据技术等在统一的框架内互相发挥最佳效益,以更好地满足矿区可持续发展空间信息服务、信息共享的需求。
在引入服务GIS的设计理念后,矿区可持续发展空间信息服务系统框架的设计与之前的信息系统有较大的区别。该架构把各部门的应用当成服务,有利于应用的拓展。在分布式数据管理体系方面,其分布式数据管理体系采取了跨平台的“纵向多级、横向网格”的组网方案,在每一级服务器之间、节点与节点之间的连接采用了“松耦合”方式(承达瑜,2008)。同时,把“进行数据存取操作”变为“请求数据存取服务”,实现网络节点之间、父节点与子节点之间、不同平台不同系统之间数据库互通。在这里要说明的是,空间数据库技术是该框架中的核心,是空间数据高效组织、充分利用计算机与存储设备的支撑技术,有关内容后文将作阐述。而元数据技术的应用贯穿于数据资源采集、数据存储管理和数据访问各个环节,以保证信息的规范管理和统一发布。
基于SOA的矿区可持续发展空间信息服务系统架构包括客户层、应用层和数据层三个层次(李圣文等,2010;承达瑜等,2009),如图3-2所示。
图3-2 矿区可持续发展空间信息服务系统的框架
客户层主要是面向不同主题、不同用户的需求,建立面向目标的、任务驱动的用户响应系统,特别是通过友好的用户界面、方便的操作模式为用户提供有效的支持,以解决具体的应用问题。并为不同用户提供个性化的用户界面,为不同的业务提供应用服务。获取用户请求后,调用用户服务层中相关服务(以函数或Web Services方式实现)进行处理,完成用户的请求。
应用服务层(应用层)的主要任务是建立面向矿区可持续发展空间信息服务的应用系统,通过方法实现、系统开发等,建设面向矿区可持续发展的空间信息技术应用子系统,主要包括矿业安全生产与防灾减灾系统、矿区环境保护与生态整治系统、矿产资源高效集约利用管理系统、矿区发展决策支持系统等,为应用提供支持。
数据服务层(数据层)的主要任务是描述、解释矿区资源、环境与灾害问题的空间信息机理、空间数据组织、空间分析、空间模拟与预测、空间模型、方法与遥感、地理信息。数据层是系统架构的核心,其主体分为3个层次(数据采集和处理、数据库群、数据访问层)和数据维护管理。数据采集和处理就是采集原始数据,并在此基础上经过统一分类编码、质量控制和统计加工形成的标准规范的数据集。
数据库群所管理的数据包括矿区基本信息、矿业生产与防灾数据、矿区环境保护与生态整治、矿区基本地理数据、矿产资源高效集约利用管理数据、监测数据以及描述各类数据本身信息和使用信息的元数据等。
数据访问层定义一系列数据访问接口,提供文件格式转换、数据基本信息提取及解决语义冲突等多种数据访问接口,实现空间数据互操作和应用互操作,是数据管理层与上层服务平台的接口。它使得用户能够一个在网络环境下共享分布于不同节点、不同类型的空间信息资源,以服务方式提供分布式环境下存在的数据处理功能,服务于矿区生产、监测、环境生态建设、“数字矿山”发展等方面的综合应用系统。
综上所述,空间信息服务是一个复杂的过程,需要把它转变成服务接口形式的、与空间信息服务活动有关的各个要素都作为软件架构的元素进行统一的部署和描述,同时把每一个服务活动的过程分解为服务的发现与服务组合问题(陈应东等,2008)。因此,实现空间信息资源整合与服务集成的过程可以分为三个阶段:规划空间信息资源与规范,空间信息Web服务构建,实现完整的Web服务架构。通过有序地实施这几个步骤,才能最终实现空间信息服务应用集成的目标。
为了使平台能够良好地适应各矿区可持续开发管理的灵活性和各功能模块的集成,实现各模块之间松散的耦合,并提高平台数据的安全性,平台设计使用了分层设计模型的思想,如图3-3所示。
图3-3 系统的分层模型
政府、企业、管理员等终端用户通过管理应用服务层使用平台,实现开发管理信息服务,如在生产情况分析、资源开发进程管理、矿区环境空间属性查询、图层编辑等功能;应用层通过数据交换层与传统的资源系统及数据库实现数据交换。通过这种分层设计,使各层各负其责,层与层之间使用标准统一的结构连接;某一层的修改不会影响其他层的功能,达到松散耦合的目的。