青海省农牧业地理空间数据共享平台建设 | ![]() |
2. 青海省地理空间信息技术与应用重点实验室, 青海 西宁, 810001
2. Geomatics Technology and Application Key Laboratory of Qinghai Province, Xining 810001, China
青海省地处青藏高原的东北部,高原特色和洁净无污染的农牧业经济是青海省经济发展的基础。农牧业信息化是青海省农牧业经济发展的重要组成部分,是加快实施农业现代化的必然选择。近年来,随着地理信息技术的快速发展及其与IT技术的深度融合,在借鉴国内外先进经验的基础上,青海省开展了一系列农牧业地理信息系统的建设,如农田信息采集与管理信息系统、农业园区信息管理系统[1]、草原生产力动态监测一体化平台[2]、特色农畜产品绿色生产信息服务平台、农牧区科技信息综合服务平台等。这些信息系统的建设与应用大大提高了青海省农牧业信息化水平和综合生产力,促进了农牧业经济的快速发展。然而,由于原有的农牧业专题信息系统各自独立建设,缺乏统筹规划,所涉及的农牧业基础地理数据及专题数据存在着多源异构、标准不一的问题,特别是农牧业基础地理数据更新不及时、共享性差,严重影响了系统的持续运行和使用,直接制约了跨部门、跨区域和跨行业的互联互通和协作共享。因此,迫切需要研究和建立统一、高效的农牧业地理空间数据共享平台,对原有的农牧业基础地理数据及专题数据进行更新、整合和规范,实现对农牧业地理空间数据的集中管理与统一服务,以满足各部门对农牧业地理空间服务的应用需求。
1 总体技术设计农牧业地理空间数据共享平台是一个开放、共享的专业系统,在平台建设过程中要充分考虑已有资源,采用相对成熟、稳定的技术进行开发,总体技术路线如下。
1) 充分依托省级地理公共服务平台建设成果。平台建设的主要数据资源包括基础地理信息数据和农牧业专题空间数据。其中,基础地理空间数据,如行政区划、交通道路、地表高程与坡度、地名地址、遥感影像等,是省级地理信息公共服务平台建设的主要数据成果之一。平台充分利用省级地理信息公共服务平台建设的基础地理空间数据资源与服务作为农牧业各种专题地理信息空间定位的基础,在避免重复建设的同时保障了数据与服务的一致性和现势性。
2) 采用符合开放地理空间信息联盟(Open Geospatial Consortium, OGC)规范的开源WebGIS技术。OGC空间信息服务访问接口和互操作规范为地理空间信息共享和互操作提供开放性标准[3],遵循OGC规范的开源WebGIS项目不断涌现,由于其功能强大、技术先进和源代码公开等特点,成为中小型项目应用的主流技术。平台农牧业专题空间数据资源的服务发布与功能开发采用符合OGC规范的开源WebGIS技术。空间数据库采用PostgreSQL/PostGIS,PostGIS是对象-关系型数据库PostgreSQL的空间数据管理扩展组件,它为PostgreSQL数据库提供了遵循OGC规范的空间数据对象、空间索引、空间操作函数和空间操作符等,具有丰富的空间数据处理能力[3]。GIS服务器采用GeoServer,它全面遵循OGC标准的Web地图服务(Web map server,WMS)、Web要素服务(Web feature server,WFS)、Web地理覆盖服务(Web coverage server,WCS)、Web处理服务(Web processing server,WPS)等规范[4],支持多种格式及上百种投影,能方便、快速地发布地图数据,实现地理空间信息的共享,同时还集成了瓦片地图服务中间件GeoWebCache作为Web地图切片服务(openGIS Web map tile service,WMTS)的服务访问代理,通过缓存机制提高了用户体验[5]。Web客户端地图开发脚本采用OpenLayers3,它是基于JavaScript的WebGIS客户端开发框架,能够利用的地图数据源包括WMS、WMTS、WFS、WKT(well-known text)、地理标记语言(geography markup language,GML)、GeoJSON以及ArcGIS Server REST服务等,可以和其他任何符合规范的GIS产品配合使用[6, 7]。同时兼容各主流浏览器,跨平台性良好,能够实现各类地图服务的在线浏览、查询、动态标绘与展示等功能。
3) 基于主流的Java EE开发框架实现业务管理。平台业务管理(主要是运维管理)系统采用主流的Java EE开发框架Spring + Hibernate + SpringMVC + Shiro。典型的Java EE开发架构分为表现层(view层)、控制层(controller层)、业务逻辑层(service层)和数据访问层(DAO层)。其中,数据访问层主要实现对数据库数据的持久化操作,该层采用目前使用比较广泛的Hibernate框架,将关系型数据库的数据映射成实体类,以面向对象方式操作数据库。同时它还对处理空间数据进行了扩展(hibernate spatial),使用标准的方式处理地理信息数据,并且提供了跨数据库的接口函数[8]。业务逻辑层调用数据访问层组件来完成系统的业务逻辑处理、事务管理等。控制层根据用户的请求调用业务逻辑层组件,返回数据模型和视图页面,该层采用SpringMVC框架; 视图页面也即表现层采用Java Web广泛使用的JSP,而Spring则作为容器管理框架,实现对控制层、业务逻辑层、数据访问层的整合与集成。对于用户权限管理,则采用Apache Shiro安全框架,通过与Spring进行集成,实现用户身份验证、访问控制等。
2 平台架构平台以数据层-服务层-应用层为基础框架,如图 1所示,直接面向农牧业地理空间数据共享平台的不同用户群体的需求,实现农牧业地理空间数据资源的管理、发布、决策和分析功能。
![]() |
图 1 系统总体框架 Figure 1 System Framework |
1) 数据层。主要由基础地理信息数据库、农牧业专题空间数据库和系统维护数据库组成。其中,基础地理空间数据库依托省级地理信息公共服务平台建设成果,以保证基础地理空间数据的一致性和现势性; 农牧业专题空间数据库包含土地利用数据库、土壤数据库、测土配方数据库、草场资源数据库、林业资源数据库、气象数据库、畜牧业统计数据库等。
2) 服务层。遵循OGC标准的WMS、WMTS、WFS、WCS等的数据服务规范,实现对各类农牧业专题空间数据资源的服务发布和共享,同时提供基于WPS规范的空间分析与处理服务。平台涉及的基础地理空间数据服务直接由省级地理信息公共服务平台提供,包括矢量底图、影像底图、地形晕渲底图、政区境界、水系、交通、植被覆盖、地名地址、路径规划等。
3) 应用层。包括面向普通用户的门户网站和在线地图系统,以及面向管理员用户的运维管理系统。
3 数据组织与管理方式青海省农牧业专题空间数据提供瓦片数据和矢量数据两种格式。瓦片数据以文件形式进行存储,通过GeoServer发布为WMTS瓦片地图服务,实现青海省农牧业专题空间数据资源的快速加载与展示。矢量数据采用PostGIS提供的Geometry数据类型进行存储,并建立空间索引实现对空间数据的快速检索,再通过GeoServer发布WMS网络地图服务和WFS要素地图服务,实现青海省农牧业专题空间数据资源的信息查询、动态渲染等。平台涉及的其他业务数据,如门户信息公告、平台服务资源、平台应用动态、用户-角色-权限、系统操作日志等系统维护数据则存储在PostgreSQL数据库中。
4 平台开发与功能实现平台的主要服务功能包括门户网站、在线地图和运维管理。此外,系统提供服务接口用于共享系统数据,方便与其他部门实现数据共享。
4.1 门户网站以网站的形式全面展示平台的农牧业专题空间数据资源的建设与应用情况,分为信息公告、服务资源、标准规范、应用动态等多个方面。信息公告模块及时发布平台数据更新、服务发布共享的动态信息。服务资源模块较为详细地列出了平台共享的服务资源,用户通过申请即可获得相关服务的使用权限。标准规范模块提供平台农牧业专题空间数据建设相关标准的在线浏览、下载等功能。应用动态模块则展现平台数据与服务的应用情况,为平台应用推广提供示范效应。
4.2 在线地图在省级地理信息公共服务平台提供的数据服务与功能服务的基础上,基于开源WebGIS技术建设了省级农牧业资源在线地图展示系统。该系统分为6大功能模块,各模块实现的具体功能如下。
1) 地图浏览模块。完成对电子地图的缩放、漫游、定位、距离量测、面积量测等功能。
2) 注册登录模块。实现用户在线注册、快速登录等功能,系统通过用户图层方案来实现个性化地图功能的定制。
3) 图层管理模块。在实现影像底图、矢量底图、地形底图切换的基础上,实现对用户图层方案的管理,具体包括图层的显隐控制、透明度控制、卷帘控制,以及图层的添加、移除、图层方案的保存、删除等。
4) 信息查询模块。包括关键字查询、空间范围查询等。关键字查询即查询专题空间数据资源的关键字,并在地图上快速定位; 空间范围查询即查询一定空间范围内的专题空间数据资源,以表格、统计图等形式展示。
5) 动态标绘模块。提供基本几何图形及属性信息的动态标注,包括绘制点、线、多边形、矩形、圆、椭圆和文本标注等,可以编辑修改图形节点、符号、颜色和属性信息等。
6) 智能制图模块。即对农牧业专题信息进行动态统计与制图,使用户能够在线实时地获得个性化农牧业专题图,辅助用户分析决策。具体包括分级统计专题图、柱状统计专题图、饼状统计专题图、点密度图等。
7) 空间分析模块。通过调用WPS服务,实现在线空间分析功能,包括缓冲区分析、叠加分析、克里金插值。如农牧业灌溉的水源地缓冲距离分析、土壤养分的克里金插值和农牧业发展适宜性综合评价等。
上述功能中用户的标绘图层、统计专题图层、空间分析的结果图层可以保存在用户的图层方案中,实现用户地图的个性化定制。
4.3 运维管理运维管理系统是平台的后台管理系统,主要分为5大功能模块。
1) 门户信息管理。主要实现对门户网站的运维管理,包括信息公告、标准规范、应用动态模块的数据添加、编辑、删除、查询、文件上传等功能。
2) 服务资源管理。实现对平台各类数据资源的服务注册与代理、服务访问控制与授权、服务拆分与聚合等功能。服务注册与代理是在进行数据与功能服务的元数据注册的基础上,实现服务的动态代理,以对外提供统一的服务接口; 在服务注册与代理的基础上对普通用户申请使用的服务资源进行审核授权,从而实现访问控制; 通过服务的拆分与聚合,则可以进一步满足用户复杂多样的空间信息应用需求,实现个性化服务和按需服务。
3) 平台监控管理。包括服务资源流量监控、系统操作日志管理,可以实时记录平台与服务资源的使用情况,并进行统计分析。
4) 安全认证管理。平台通过对用户、角色、权限(即导航菜单与功能菜单)的管理来实现用户身份认证与访问控制。
5) 数据字典管理。对系统数据库的数据字段做相关索引,以便灵活、动态地更新、扩展数据字段。
5 结束语依托省级地理信息公共服务平台,采用开源的WebGIS和Java EE框架,构建了青海省农牧业地理空间数据共享平台,把分散的农牧业资源空间信息进行整合,实现了农牧业空间信息的共享与服务管理、在线浏览与动态制图等功能,为政府部门、企事业单位和社会公众提供统一、通用、权威、开放的农牧业地理空间信息服务。目前,已经基于农牧业地理空间数据共享平台实现了对已有的农牧业专题信息系统的升级改造,并在此基础上建设了青海省农牧业综合信息服务平台,实现了与基层农技推广体系的全面对接。农牧业地理空间数据共享平台的建设对于提升青海省农牧业综合信息服务能力、推进农牧业信息化水平具有重要意义。
随着现代农业科技、智能传感器、物联网、对地观测与地理信息技术的快速发展,农牧业发展正逐步进入到大体量、多样性、处理速度快、真伪难辨和价值大但有效价值稀疏为特征的大数据时代[9, 10]。在农牧业地理空间数据共享平台的基础上,运用云计算和大数据技术,对涉及农牧业生产、经营、流通、质量安全等领域的数据进行有效的采集管理,并进行时空大数据的挖掘分析[11],成为未来的发展趋势,对推动智慧农牧业的发展将发挥重大作用。
[1] |
张源俊. 民和县农业园区信息管理系统的设计与实现[D]. 北京: 北京工业大学, 2014 http://cdmd.cnki.com.cn/Article/CDMD-10005-1016700785.htm |
[2] |
赵成福. 青海省草原生产力动态监测一体化平台的研究与应用[D]. 兰州: 兰州大学, 2015 http://cdmd.cnki.com.cn/Article/CDMD-10730-1016700260.htm |
[3] | 尹芳, 冯敏, 刘磊, 等. 基于OGC规范和Open Source项目的WebGIS开发与应用[J]. 计算机工程与应用, 2010, 46(30): 68–72 |
[4] | 张大鹏, 张锦, 郭敏泰, 等. 开源WebGIS软件应用开发技术和方法研究[J]. 测绘科学, 2011, 36(5): 193–196 |
[5] | 聂云峰, 刘海玲, 许虎. GeoWebCache瓦片地图服务中间件研究[J]. 测绘科学, 2011, 36(6): 207–209 |
[6] | 李光师. 基于开源平台构建WebGIS应用系统[J]. 测绘科学, 2011, 36(6): 259–261 |
[7] | 郑逢斌, 元沐南, 王栋, 等. 基于开源WebGIS的遥感数据共享方法研究[J]. 河南大学学报(自然科学版), 2016, 46(4): 438–446 |
[8] | 谢安涛, 唐建智, 许文波. 基于Hibernate Spatial构建松散耦合地图服务的技术方法[J]. 地理信息世界, 2010, 8(3): 79–83 |
[9] | 孙忠富, 杜克明, 郑飞翔, 等. 大数据在智慧农业中研究与应用展望[J]. 中国农业科技导报, 2013, 15(6): 63–71 |
[10] | 孟祥宝, 谢秋波, 刘海峰, 等. 农业大数据应用体系架构和平台建设[J]. 广东农业科学, 2014, 41(14): 173–178 DOI: 10.3969/j.issn.1004-874X.2014.14.038 |
[11] | 边馥苓, 杜江毅, 孟小亮. 时空大数据处理的需求、应用与挑战[J]. 测绘地理信息, 2016, 41(6): 1–4 |