卢彦科 张伟
(1.河南省自然资源综合保障中心,河南 郑州 450016;2.河南省政务大数据中心,河南 郑州 450016)
随着自然资源业务现代化建设的深入,自然资源已经进入大数据时代,主要表现在数据体量大,数据呈爆发式增长,不断增加的数据量要求存储支持动态扩展;数据种类繁多,包括基础地理数据、遥感影像数据、土地数据、矿权数据、地灾数据、地质环境数据等;数据的产生和处理速度要求快,能够从大量数据中快速获取有效信息是自然资源业务的迫切要求。传统的数据库已经无法满足需求,数据云存储技术通过其分布式存储和并行化处理海量数据的能力,为自然资源海量数据的存储和处理提供了良好支撑。本文结合河南省国土空间基础信息平台的“一张图”对数据存储及应用的要求,对数据云存储技术进行研究和探索,用以提升自然资源数据的存储、检索、分析性能,为实现自然资源工作的信息化快速发展提供保障。
大数据处理的关键技术基本分为大数据采集、大数据预处理、大数据存储与管理、大数据统计分析及挖掘、大数据展现和应用(大数据检索、大数据可视化、大数据应用、大数据安全等)5 个步骤。在大数据环境下实现地址数据的采集、存储、管理、共享、应用,其核心主要是明确自然资源数据的存储类型,以便选择相应的数据库存储模式。同时,解决自然资源数据的分布式存储与并行计算。大数据处理的关键技术如表1 所示。
表1 大数据处理的关键技术
研究自然资源大数据,就是充分利用数字化自然资源数据,以大数据技术和产业为指导,深入挖掘自然资源信息,在数据采集、数据整合、信息提取和数据分析等方面开展相关技术研发和应用。
河南省自然资源数据目前已涵盖全省测绘、地政、矿政、地质环境等4 大类、27 个专题、3243 个数据集、36818 个图层,数据总量达40TB。这些数据来自全省各级自然资源管理相关部门及其相关单位不同领域,其中现状类、规划类数据要通过逐级汇交方式实现数据汇聚,数据在本地存储;自然资源管理类数据通过实时备案、在线业务协同等方式实现数据汇聚;其他行业数据通过交换、协议、共享等方式实现数据汇聚;互联网类等数据通过网上接口、下载等方式实现数据汇聚;离线汇交、在线调用、服务接入多种方式共用,保障数据同步与更新。考虑到自然资源数据自身的特点以及能够被快速访问的需求,传统的关系型数据库存储在小规模数据量时可以达到很好的效应。但随着数据量与应用范围的增加,传统的关系型数据库性能会快速下降。因此,数据分布式存储是必然的选择。
云数据存储技术的出现,凭借其分布式存储和并行化处理海量数据的能力,为自然资源海量空间数据的存储与处理提供了解决方案。
河南省国土空间基础信息平台的“一张图”通过GIS 数据中心集成开发、网络通信以及信息化技术,建设自然资源云存储管理系统,实现体系内的国土空间基础信息纵横联通、共建共享、深度融合。
河南省自然资源三维立体资源“一张图”基于虚拟化、云计算、多租户等技术建设,实现参建体系内的河南省国土空间基础信息纵横联通、共建共享、深度融合,呈现统一基础架构的云资源。各级用户实体以虚拟资源,而不是物理设备方式获得可用资源,并能够将取得的虚拟资源根据需求搭建虚拟业务系统及数据库,相对独立地在权限范围内运维管理,实现按需分配的自然资源云服务。基于云分布式存储技术的数据库存储解决海量自然资源数据存储和大规模数据处理问题,提高用户的访问效率。云存储平台整体架构可以划分为四个层次:数据存储层、数据管理层、数据服务层与用户访问层,如图1 所示。
图1 云存储平台架构设计
(1)数据存储层
数据存储层是云存储系统的最基础部分,由存储协议(满足FC 协议、iSCSI 协议、NAS 协议等)构成,实现数据的统一管理。它主要包括计算资源、存储资源、网络资源以及安全设备等。各种类型的数据统一存放在存储系统中,实现数据的统一管理。
弓闲置不用时会松弛,弓的强度减弱,弓辅就是用来固定弓的形状使弓不变形,保持弓的弯度强度,所以可引申出安定的意义。
(2)数据管理层
数据管理层是云存储系统的核心,也是云存储中最难以实现的部分,主要包括大规模的分布式计算系统,担负着管理集群系统资源及资源的虚拟化、控制分布式程序运行、数据加密,分发以及容灾备份等工作。数据管理层可实现空间大数据的快速存取与高效计算,满足空间时空信息浏览、高效分析处理与应用的需要。
(3)数据服务层
数据服务层是采用云分布式服务技术,根据不同的用户,开发出不同的应用服务接口,并提供相应服务,实现大规模数据的存储共享、查询及处理服务。
(4)用户访问层
用户访问层通过授权、认证等机制使用户登录、享受特定权限范围内的云服务。该层具体包括一些数据搜索服务、地图操作以及其他第三方服务。
河南省自然数据纵向贯穿省、市、县三级,按照数据类型分为现状数据、规划管控数据、管理数据、社会经济数据,其中现状数据包含基础地理、遥感影像、土地利用现状、矿产资源、三维数据等,为掌握国土空间的真实现状和国土空间的开发利用与变化状况提供数据基础;规划管控数据包含基本农田保护红线、生态保护红线、城乡规划、土地规划、控制性详细规划、交通规划等专项规划,为行政审批和国土空间规划编制提供管控数据依据;管理数据是行政审批过程中产生的数据,包含地政管理数据、测绘管理数据等,为实施批后监管提供数据基础;社会经济数据包含宏观经济、人口数量、消费物价指数、社会舆情等,为了解经济、社会运行情况提供数据基础。数据资源分类体系结构如图2 所示。
图2 自然资源数据体系
要将这些数据标准、模型、格式、精度、存储形态等差异甚大的各类数据集成到自然资源“一张图”数据库中,需要建立一套统一的数据格式和标准,使各类数据能够在统一空间基准下进行空间定位、相互叠加和套合。“一张图”数据库根据数据结构的差异,将结构化离散数据和非结构化网格数据、栅格数据的信息数据进行统一格式和标准,导入分布式文件系统HDFS 中,非结构化数据在分布式文件系统中按照特定的约定方式被提取出来,并存放到HBase 构建的内容库中,结构化数据被发布到GIS 服务集群中,便于数据管理的提取和访问[2,3],以此模式形成全省覆盖、内容完整、准确权威、动态鲜活的统一国土空间基础数据资源。
河南省国土空间基础信息平台的“一张图”以二、三维一体化GIS 技术为基础框架,在组织和关系上进行优化设计,支持分布式的数据存储,使得数据可存储在不同的物理位置,在数据管理平台中,将三维同现状、规划、管理、社会经济等业务要素相结合,以逻辑统一的方式进行数据信息的展示,形成自然资源三维立体“一张图”,如图3 所示。
图3 三维立体自然资源“一张图”
“一张图”数据存储充分考虑数据库与业务库之间关系,采用了数据库与业务库隔离、省及各地市数据库松耦合的方式,独立存储。同时根据存储数据类型的不同,从确保数据稳定可靠、扩展性强、安全性强等角度考虑,分别选用国产关系型数据库、Elasticsearch、非关系型数据库、HDFS 以及HBase数据库进行物理数据库搭建。
按数据类型定义数据存储方案,每个数据类型可自行定义数据存储位置,一旦有新的数据类型需要纳入管理,“一张图”数据库依据数据结构的差异,按照现有的统一格式和标准,分类别进行结构化和非结构化存储和管理,导入分布式文件系统HDFS 中,做到不同类别数据完全隔离,互不影响。
云数据库是被优化或部署到虚拟计算环境中的数据库,在云数据库应用中,客户端无需了解数据库的底层细节,底层硬件都已经被虚拟化[4]。对用户来说,云数据库就像运行在单一服务器上的数据库一样,但数据的存储、处理能力与传统意义上的数据库相比有了质的飞跃[5,6]。
考虑到自然资源数据自身的特点以及能够被快速访问的需求,传统的关系型数据库存储在小规模数据量时可以达到很好的效应,但随着数据量与应用范围的增加,传统的关系型数据库性能会快速下降,因此,多类型、数据分布式存储是必然的选择。
选择自主可控、国产化核心技术,通过整合人工智能技术,实现数据库的自我检测、自主运维,在降低数据库运维成本的同时,提高计算能力,使数据库获得更快的响应速度。SuperMap GIS 系列产品与其需无缝对接,将人工智能技术融入分布式数据库,实现了大数据空间查询与分析从性能到算力的全方位优化,主要存储现状类、管理类、综合分析类等结构化数据。
非关系型数据库即NoSQL 数据库,以块为单元操作数据,使用非结构化查询语言(UNQL)。NoSQL 数据库采用了键值(Key-Value)存储模式[7],该结构主要分为主键、属性和值三部分,基于值存储的数据相对较大的特点就是对数据进行切分与压缩的技术处理后,按照特定的约定方式被提取出来,并存放到HBase构建的内容库中,可以大幅提升数据传输能力[8],同样也是因为基于键值对,数据之间没有耦合性,所以非常容易水平扩展。该数据库主要存储平台运行日志、三维地图缓存数据等事务性不强、数据模型比较简单的数据类型。
ElasticSearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM)基础上的搜索引擎。ElasticSearch 不仅包括了全文搜索功能,还可以进行分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。实时分析的分布式搜索引擎,可以扩展到上百台服务器,处理PB 级别的结构化或非结构化数据,主要存储社会经济数据中实时动态数据。
HDFS(Hadoop Distributed File System) 是Hadoop 分布式系统体系结构中的核心,主要实现了分布式文件系统。HDFS 在处理超大文件上非常有优势,而且支持流式的访问数据,它的设计建立在“一次写入、多次读取”任务的基础上。HDFS 中,一个数据集如果由数据源生成,就会被复制分发到不同的存储节点中,响应不同的数据请求,主要存储现状数据中海量影像以及文本数据。
HBase(Hadoop database)是一种构建在HDFS 之上的分布式、面向列和提供高可靠性、高性能、可伸缩、实时读写的开源数据库系统,适用于需要实时读写、随机访问超大规模数据的场景。HBase 是分布式空间数据存储和管理首选,既能支持多种数据格式的存储,包括栅格数据(如GeoTIFF)、矢量数据(如UDB/UDBX、Shapefile、GDB 等)和各种文件数据,又具有较强的数据查询与读写能力,基于HBase 数据库可以实现矢量数据15 亿条线+28 亿个面的迅速存储与读取,主要存储海量矢量数据。
本文提出的理论与方法在河南省国土空间基础信息平台“一张图”建设中得到了部分应用,解决了超大规模海量自然资源数据存储和实时更新的一些难题,为自然资源数据的高效存储与实时共享提供了一定思路。河南省自然资源“一张图”建设完成后,目前已覆盖全省18 个市、100 多个县的自然资源管理部门。
自然资源信息是重要的基础国情,自然资源管理关系国计民生,落实自然资源“两统一”职责,全面深化“放管服”改革,必须依靠信息化的引导和驱动,自然资源海量数据存储管理又是自然资源信息化的关键,因此研究云存储技术在自然资源数据存储中的应用,提高自然资源信息化管理和应用水平是自然资源信息化事业发展的必然要求。