安国强,仲阳,吴建廷,孔维剑,秦晓敏,许霄霄,陈龙飞
(1.山东省土地调查规划院,山东 济南 250014;2.山东师范大学地理与环境学院,山东 济南 250038;3.山东省自然资源厅, 山东 济南 250014; 4.山东省国土空间数据和遥感技术中心, 山东 济南 250014;5.汶上县自然资源和规划局, 山东 汶上 272500)
大数据为政府用户、企业用户与个人用户提供前所未有的应用价值和服务能力[1],自然资源统筹是当代自然资源信息化建设的基础与核心工作[2]。国土资源大数据总量庞大,上云运行效率不仅是国土资源信息整合共享的瓶颈问题,也是一个新时代大数据应用的科学问题,是优化国土资源配置[3],提高国土空间治理能力现代化水平的重要体现。国土资源大数据上云属于数字地球概念的范畴,采用数字化的手段解决地球问题,最大限度地利用现有信息资源[4]。
国际上对于数字地球、云数据、数据源[5-7]等大数据的概念、理论与关键技术的研究较为多见,国内学者在实践[8-9]的基础上,研究了国土资源大数据的内涵、研究现状[10]及国土资源相关系统平台的建设目标任务[11]、构架体系[12]、平台搭建及数据清理等相关技术[13-14],为国土资源大数据应用[15]和共享提供了总体建设思路和框架[16]。然而针对提高国土资源大数据传输、显示、查询及分析效率的体系构建及关键技术的深化研究尚不多见。该研究以山东省国土资源大数据上云系统建设实践为基础,深入剖析保障国土资源大数据高效运行体系和提高效率的关键技术。从国土资源大数据管理的功能设计、数据组织、硬件配置、拓扑结构4个方面创建了提高数据上云系统运行效率的方法体系,有效提高了数据显示、管理、查询、分析的速度和处理能力,为同类国土资源管理信息系统的建设提供参考。
数据是国家基础性战略资源[17],实现国土资源大数据上云,是全国自然资源部门动态掌控自然资源,完善资源监管和智能服务技术支撑体系的重要信息化手段[18-20],国土资源大数据的应用为我国自然资源的优化发展带来极大的便利[14]。提升国土资源大数据系统应用的效率,需要从系统的硬件配置、功能设计、数据组织和拓扑结构等4个方面进行创新研究,形成国土资源大数据系统高效运行的方法理论体系(图1)。
图1 国土资源大数据高效运行体系理论框架图示
硬件配置是通过网络、服务器、交换机等硬件设备,搭建国土资源大数据高效运行体系的物理环境。功能设计是通过技术创新、GIS技术等先进技术,实现矢量、栅格等数据管理、查询、分析等功能的效率提高。数据组织是通过对不同格式的数据进行统一管理,采用行政区、年度、比例尺等数据组织目录进行数据的整理归档,实现数据的快速调阅浏览分析等。拓扑结构是指服务器环境、系统运行存储结构、网络结构,通过有效合理的拓扑方式进行组织建设,保证国土资源大数据上云系统的高效运行。
国土资源大数据上云系统整合各类国土资源数据,实现分层叠加显示、查询与浏览、分析与数据挖掘等功能,能够与其他业务系统实现对接,支撑对数据库进行的管理和辅助决策,提供对外服务。系统采用悬浮倒挂式平台,和粗粒度、松耦合面向服务的体系架构(SOA,Service-Oriented Architecture),把各服务之间通过定义良好的接口和契约联系起来。SOA架构下的系统易于扩展,能够适应不断变化的国土资源管理业务及大数据上云的需求,使开发者可将更多的精力转移到专业服务上,形成统一的技术框架和运行环境,实现应用系统的快速搭建和灵活调整,为系统功能设计、数据组织、软件环境、系统拓扑结构的整合提供了优越的条件,也为充分发挥各个子系统的特定功能奠定了基础。
2.1.1 数据推送与接口调用
近年来,随着计算机技术的快速发展,国土资源有关数据日积月累,不断庞大,涵盖了国土资源管理的各个业务,包括遥感影像、矢量地图、属性数据、扫描档案、业务要件等多种类型[20-21],是国家空间数据基础建设的重要性组成部分,数据总量可达PB级。提高国土资源大数据利用效率,推进国土资源数据与政府部门的共享服务,有利于提升政府的服务能力和综合效能[21]。山东省国土资源大数据上云系统可通过数据推送与接口调用实现数据的共享交换,与各部门数据互通互联,共同融入全省政务云。
2.1.2 数据编辑、查询与分析
上云系统提供多种工具实现对简单要素类、注记类、对象类等空间数据和属性数据的调阅和修改。提供对栅格数据分析与处理功能,包括:图像变换、多波段遥感图像处理、正态分布统计、多元统计、图像数据和矢量数据的配准迭合、影像库管理。支持修改属性结构、属性值;实现对属性数据的导出;提供灵活的属性数据批量处理工具。
数据查询主要包括分类查询和条件查询。分类查询是指在统一的操作界面下,通过人机交互查询各类国土资源专题数据信息,如宗地的基本信息、界址点信息、界址线信息、土地利用现状信息、基本农田信息、基础地理要素信息等。条件查询是指根据用户自定义条件查看相应的空间图形或属性信息。
数据分析以Hilbert曲线作为空间聚集的典型划分算法,从统计学的角度,将空间上具有相似性质的对象聚类,将聚类结果整体加入并行节点。通过大量实验对比分析,这种方法相比传统的方法更具有明显的优势,适合海量国土资源空间数据运算需求。采用多节点并行计算锁,利用分布式数据存储的模型,结合空间并行计算框架,实现任务的多节点调度和对结果的合并处理,大幅提升了分析的效率。数据分析主要包括:数据裁切分析、叠加分析、缓冲区分析等地理信息系统分析功能。对于十万级别以下数据量的叠加分析采用多核并行处理策略。
2.1.3 数据迁移与转换
支持不同数据库之间、不同服务器之间的数据迁移。支持单个文件的迁移和整体数据库的迁移。数据迁移工作在GDB企业管理器中完成。提供不同格式数据之间的转换。如SHAPE、DXF、E00等类型数据之间的相互转换,其操作界面友好、简洁、通俗,并提供转换日志查看转换过程是否正常。
国土资源大数据上云系统数据构成十分复杂,从区域方面看,有村级、乡镇级、县(市、区)级、市级和省级5个层级,从业务角度有土地规划数据、土地调查数据、土地评价数据、土地开发整理数据、遥感数据,从数据作用来看有空间数据、非空间数据、文字报告、现场调查记录、实景照片等,还有栅格数据、矢量数据和属性数据,从存储格式上来看包括国内外常用GIS软件所支持的矢量数据(如:DWG,DXF,E00,Shape,Coverage,Geodatabase,Mid,Mif,MapGIS6X,MapGIS K9等)和国内外常用遥感影像处理软件所支持的栅格数据(如:TIFF,CEOS,HDF,RAW,TIF,GIF,JPG,MSI,PIX,IMG,ENVI等),非空间数据包括各种文档(如:pdf,bmp,xml,html等)和表格数据(如:Access,SQLServer,Oracle)等。山东省国土资源大数据上云系统,通过创新模式,实现了多种数据的共生性、多重性等关系表达,实现了基于行政级别、行政区划、年度、比例尺、专题数据等多主题集中管理,大幅提高了系统运行的效率,为全省国土资源利用决策提供科学有效的支持。
服务器虚拟化架构设计是服务器虚拟化技术运用的核心,直接决定了整个服务器资源体系对应用系统的承载能力、运行效率以及可靠性。计算机资源池由机架式X86服务器构成,服务器通过虚拟化部署一般业务系统和web应用系统。以虚拟技术为顶层架构,基于高端八路服务器、小型机、磁盘阵列、光纤交换机、核心交换机等设备,搭建支持国土资源大数据上云系统高效运行的物理平台。服务器虚拟化技术科学解决了传统服务器系统建设的问题。通过提高物理服务器利用率大幅度消减物理服务器购置需求、数量和运营成本;通过利用服务器虚拟化中CPU、内存、IO资源的动态调整能力实现对业务应用资源需求的动态响应,提升业务应用的服务质量;通过在线虚拟机迁移实现更高的可用性和可靠性以及各种基于资源优化或节能减排策略的跨物理服务器的调度。
系统是以计算机软硬件环境、MapGIS集成开发平台与网络通信技术为依托,以信息化标准规范体系和数据交换体系为结构,以土地资源基础类、管理类、专业类、文档资料、元数据等各类核心数据库为基础,通过建设国土资源行业模型管理层,建立基于共享服务平台的国土资源专业数据服务体系和数据集,最终形成以数据和服务为支撑,面向共享服务平台的国土资源数据管理体系。系统拓扑框架从下到上分为运行支撑层、体系结构层、核心数据层、模型管理层、共享服务层和应用层6个层次(图2)。
运行支撑层为硬件、软件和网络基础设施,以MapGIS集成开发平台作为基础支撑环境。体系架构层则由标准体系和交换体系共同构成,标准体系包括数据规范、服务规范和应用规范;交换体系包括数据、应用和服务的综合交换。核心数据层则由数据元数据库、基础类数据库、专业类数据库、管理类数据库、文档资料数据库,以及支撑系统本身的系统元数据库。模型管理层是基于核心数据层提供国土资源模型库的各项功能。共享服务层是通过共享服务平台对各类业务功能需求进行服务封装,并以数据服务的方式提供给应用层服务支撑。数据服务层包括通用数据服务、专用数据服务和工具集3部分。应用层是利用数据服务层提供的相关服务来开展各项业务应用。
图2 国土资源大数据高效运行体系拓扑结构图
高效的数据处理技术是国土资源大数据上云系统成败的关键。对数据的快速裁切、查询、快速显示、栅格瓦片、GIS分析等,提供多核、多节点不同粒度并行策略,全面支撑空间并行计算。例如,对体量较大数据的叠加分析,采用多节点并行计算锁,利用分布式数据存储的模型,结合空间并行计算框架,实现任务的多节点调度。采用最近最少使用算法(Least Recently Used ,LRU)管理空间瓦片裁剪缓存和矢量数据预处理技术,可以达到减少显示数据量的同时不影响显示效果。通过坐标转换、数据裁剪、减少渲染范围、多线程、多处理器并发等手段,提高网络地图服务器集群的并行处理能力,可提高数据的显示速度。
国土资源数据异构性主要体现在3个层次:语法结构异构性、语义异构性和分布性异构性。采用上云系统GIS中间件技术可有效管理多个数据仓库,而不改变原有的空间数据模型标准和数据表示方法。将MapGIS数据上载至ORACLE数据库中,通过MapGIS数据系统发布标准的OGC服务,方便用户在ArcGIS环境下进行数据的调阅。上云系统支持的各种GIS数据中间件主要有如下几种。
(1)MapGIS中间件。该技术基于统一的空间要素实体模型,设计统一的功能操作接口,根据数据类型在语义上最终分派给某类格式插件进行处理,通过同一访问接口实现对异构数据的直接编辑。
(2)ArcGIS中间件。把ArcGIS作为MapGIS的数据源,实现在MapGIS环境下操作ArcGIS的数据。ArcGIS中间件可访问的数据包括:Shape、Coverage、Personal GDB和SDE GDB。
(3)SDO中间件。把Oracle Spatial作为MapGIS的数据源,实现在MapGIS的环境下操作Oracle Spatial的数据。
空间数据分布式管理的核心基础是网络空间数据库。为了实现空间数据存取的设备无关性、位置无关性,上云系统从软件结构上,把数据管理功能独立成一个功能层,所有的数据存取均通过该功能层。在该功能层定义了“研究区”的概念,并在研究区的基础上,定义了对空间实体相关的各种数据进行添加、删除、更新、检索、判断等操作,这些概念和操作通过组件及API函数接口或C++类,暴露给上层程序。
利用空间数据库引擎(SDE),将多源国土资源空间数据存放在商业关系数据库中管理,既可大大拓展空间数据的容量,又可以利用关系数据库的海量数据管理、事务处理(Transaction)、记录锁定、并发控制、数据仓库等功能,使空间数据与非空间数据一体化集成。数据可以存放在网络服务器或Web服务器,也可以存放在本地。访问数据时可以不必关心数据的存放位置,用户可以像操作本地数据一样去操作网络数据。
数据仓库提供联机分析处理(OLAP)工具,用于多源异构数据的分析,有利于有效的数据挖掘。数据挖掘由数据选择、数据清理、数据集成、数据变换、模式评估、知识表示等步骤的迭代序列组成。基于数据仓库的数据挖掘,综合了数据挖掘技术和空间数据库技术,通过空间挖掘实现空间关系与非空间数据关系的发现,以及空间知识库的构造、空间数据查询的优化和其他有意义的模式的提取;还可以实现挖掘GIS异构数据的特征规则、分类规则和数据聚类。
上云系统拥有海量数据管理能力,其中地形数据以分幅专题层的方式管理;专业数据以整体专题层的方式管理。不同类数据通过统一坐标下的空间位置叠加形成统一整体。海量地图库管理系统在平面上以图幅为单位来管理各幅地图,在纵向上以“要素层”来组织各图幅数据。按这种组织方式,上云系统的海量地图库管理系统可以提供给用户灵活直观的数据入库手段、强有力的数据查询途径和高效快捷的漫游显示等功能和特性。上云系统还可以为用户提供图幅间接边功能,以消除相邻图幅的接边误差,提高对跨图幅图元进行整体查询和归并检索输出的效率。
上云系统是从界面表现到数据管理各个层面上实现搭建。可视化的搭建配置管理和工作空间管理实现界面表现,工作流管理实现功能逻辑和业务逻辑的控制,功能仓库管理提供的功能仓库系统实现GIS基础功能和扩展功能服务,数据仓库系统实现对多源异构的空间数据和非空间数据的集成管理。搭建配置管理是实现基于上云系统搭建C/S和B/S应用系统的集成开发环境。集成设计器主要用来搭建适合多种GIS平台的基于C/S模式的应用系统,表单设计器主要用来灵活地搭建Web应用程序。
山东省国土资源大数据上云系统采用了面向服务的体系架构,从功能设计、数据组织、硬件环境和拓扑结构4个方面构建了高效运行体系设计,实现了矢量数据、异构数据、分布式数据存储及挖掘、海量图库管理、灵活的搭建式开发等技术,大幅提高了国土资源大数据的处理能力和处理效率。为测试上云系统的数据整体处理能力,采用一个市的国土资源管理数据对系统进行测试,实验数据及软硬件环境基本情况如表1所示。
表1 山东省国土资源大数据上云系统效率测试基本配置
采用矢量数据直接发布、多级缓存实现快速浏览、多核集群多线程并行化绘制、元素过滤、网格索引、D2D硬件加速等技术后,通过客户端与服务器端的协作,实现矢量数据实时可视化任务的分解,调度集群中的多个服务器并行处理计算开销较大的矢量数据实时可视化任务,提高了网络地图服务器集群的并行处理能力。使用不同的虚拟用户数对采用上云系统的网络地图服务模型进行了仿真实验,针对系统并发性能耗时情况采用1台服务器10个用户、5台服务器10个用户、5台服务器100个用户进行测试。试验结果表明,并发性能耗时平均提速99.5%以上,100个用户访问5台服务器的并发性能耗时由32.66s缩短到1~2s范围内,其中快速引擎仅需1.13s,栅格瓦片仅需0.96s,可见山东省国土资源大数据上云系统快速显示性能得到大幅度提升(图3)。
传统的GIS图形存在裁剪瓦片耗时、耗力,GIS图形显示效率低的应用瓶颈。上云系统通过研发多线程、多处理器并发处理功能,制定多任务划分调度策略,优化瓦片裁剪的算法,极大地减少裁剪瓦片的时间。新的瓦片裁图方式的应用使本地数据源(HDF)矢量数据裁图效率同比提升17倍,其他网络数据源,如Oracle,SQL,Shapefile等矢量数据,瓦片裁剪效率同样得到大幅提高(图4)。
图3 山东省国土资源大数据上云系统快速显示效果对比图
图4 山东省国土资源大数据上云系统瓦片裁剪效率对比图
强化自然资源信息化建设,提高自然资源管理的信息化水平,及时、准确、全面掌握自然资源利用现状和管理状况,为促进全省经济增长的宏观决策提供科学支持,是保障新旧动能转换的有力措施。依托自然资源现有国土资源大数据,建立物理分散、逻辑集中、资源共享、政企互联的政务信息资源“大平台、大数据、大系统”,是实现政务信息系统整合共享的新时代要求。国土资源大数据上云不仅是一个部门或单位可以单独实现的目标和任务,需要联合自然资源、大数据、信息化等各个部门数据、网络、计算机等资源互通互联,形成高效、统一、安全、政民互动的全省政务系信息系统。该文从提高上云效率的角度探讨了国土资源数据融入全省政务云的体系建设思路及有关技术,旨在展开有关政务信息整合共享系统建设的广泛关注和讨论,促进全省信息化的建设。