APP下载

ETL 技术在“数字城市”中的应用研究

2020-02-03刘文军万小飞

江西测绘 2020年4期
关键词:数字城市空间数据入库

刘文军 万小飞

(江西省测绘应急保障服务中心 江西南昌 330209)

1 引言

数字城市是数字中国地理空间框架的重要组成部分,而地理信息数据是数字城市建设中的重要组成部分。

一方面,我国正在建设以数字信息服务为目标的国家地理信息系统,通过对不同技术手段获取的各种基础地理信息进行采集、编辑处理、存贮,建成多种类型的基础地理信息数据库,并建立数据传输网络体系,为国家和省(市、自治区)各部门提供基础地理信息服务。同时,各省、市、自治区也根据实际情况,建立了区域的地理信息系统,并形成地理信息基础数据库及面向服务的框架数据库。地理信息数据具有数据量大、类型多样,层次结构复杂等特点。

另一方面,社会各行业对地理信息服务要求也多种多样,不同行业应用对地理信息数据的要求在属性、精度、区域上各不相同,并且地理信息数据需求在不断变化。同时,随着地理信息系统技术的发展,GIS 软件层出不穷,不同的软件应用平台都有着各自支持的数据格式,其数据的存储和组织形式都存在很大的差异。各个测绘部门地理空间数据库处于分散状态,孤立存放在各个单位,也没有统一的管理,数据共享与信息交换变得十分困难,被称为“信息孤岛”[1]。因此,在已有的地理信息数据和需要提供的数据服务之间出现了较大的冲突。

2009 年,原国家测绘地理信息局制定并印发了《国家地理信息公共服务平台建设专项规划(2009—2015 年)》、《关于加快推进国家地理信息公共服务平台建设的指导意见》和《国家地理信息公共服务平台技术设计指南》,这标志着我国地理信息公共服务平台(以下简称“公共服务平台”)建设试点工程正式启动,但尚处于初级发展阶段。从已建成的公共服务平台网站上来分析,可以得出一些结论:一是该平台所提供的公开数据是有限的,而且基本上都是小比例尺数据,这些数据并不能完全满足各个专题应用部门的应用需求;二是用户要获取数据,必须先获得权限,根据不同的权限获得相应的数据,显然这种服务模式环节多、过程复杂、等待的周期长;三是要构建这种平台应用系统,需要花费大量的人力、物力和财力,技术相当复杂,显然在应对突发事件时快速做出应急预案或者面对大型的业务,这种获取数据的模式就显得有些力不从心了。相对而言,目前各专题应用部门获取数据的手段大部分仍是组织人员实地测量或购买,从而造成了数据的重复性建设。因此,对地理空间数据的集成和共享问题的研究是非常有必要的。

目前,国内的大中型企业拥有大量可分析的业务数据,要想充分利用系统中的数据,并使得这些数据得到科学的分析,就必须搭建数据仓库平台。而ETL(Extract Transform and Load)技术在数据仓库建设过程中发挥着至关重要的作用,是关键的一环[1-2]。ETL 是数据抽取、数据转换和数据装载的缩写,在电信、金融和企业等领域应用的较广泛,但其数据较多来源于各部门的业务数据,并非地理空间数据。

基于以上背景及需求分析,尝试将ETL 技术和GIS 技术相结合[3],将地理空间数据作为ETL 过程中的数据源,针对多源异构空间数据进行集成和整合,从而更好地解决“信息孤岛”的问题,实现空间数据的共享,具有广泛的应用前景。

2 ETL 技术简介

ETL 可以概括为数据抽取(Extract)、数据转换(Transform)和数据装载(Load)整个过程的总称[4]。即用户从指定的数据源中抽取出自己感兴趣的数据,按照事先制定的清洗和转换规则进行数据的清洗和转换,最终装载到目标数据模型中,供本部门使用。

ETL 技术包括三个重要的环节,一是数据的抽取,即从不同的数据库或仓库等系统中读取数据,这是一个数据读取的过程,是ETL 技术的前提;二是数据的转换,即按照预先制定的清洗规则和转换规则,将读取的数据进行属性字段合并、融合、排序、赋缺省值等操作,实现数据的转换,这是一个数据的清洗和转换的过程,是ETL 技术的核心[5-6];三是数据的装载,即完成对清洗和转换后的数据进行装载入库工作,这是一个数据的入库的过程。详细流程图见图1 所示。

图1 ETL 技术流程图

3 研究目的

按照国家制定的有关标准和各个行业的数据应用需求,旨在从海量的、复杂的基础地理信息数据和框架数据中提取行业相关应用的空间数据,经过数据的清洗、加工、整理和转换为统一标准格式的数据,最后装载到框架数据库中,提供给各行业部门应用,以达到对多源异构空间数据有效集成的目的。另外旨在实现对那些未及时更新到数据库中的数据(即所谓的第三方数据)进行入库处理。考虑到抽取工具的应用广泛性,旨在能够将ETL 数据抽取工具集成到不同的GIS 应用平台和操作系统中,实现ETL 数据抽取工具的科研价值和商业价值。

4 研究内容

(1)在理论上,阐述了基于ETL 技术流程下,对基础地理信息数据进行抽取、清洗、加工、整理及转换,最后装载到框架数据库中的一套思路。在技术上,应用Microsoft.NET 作为开发环境,C#作为主要开发语言,采用ESRI 的ArcEngine 作为GIS 平台,采用ESRI 的ArcSDE 作为空间数据库引擎,Oracle为后台数据库,开发一个主要用于空间数据抽取、转换、装载的工具;

(2)空间数据的建模;

(3)以存储在Oracle 数据库中的Geodatabase 数据(GDB 格式)为源数据,以Shapefile 格式、GDB 格式执行抽取后的目标数据,进行试验测试,并分析试验结果。

5 技术路线

主要是对ETL 工具的设计方案的考虑,可以借鉴工作流程的一些概念和思路。其系统技术流程如图2 所示。

图2 技术路线图

6 系统总体架构

系统总体架构的设计旨在从访问基础地理信息数据库,到数据的中间处理,再到目标数据库,按照ETL 的流程,这其中包括数据的抽取、清洗、加工、整理,再转换为统一标准格式的数据,最后装载到目标数据库中,发布到地理信息公共服务平台或直接应用于各个专题业务部门。其系统总体架构如图3 所示。

图3 系统总体架构图

系统实现步骤:

(1)首先通过连接数据库,访问到所需要操作的源数据;

(2)按照应用的需求,制定抽取规则,将全部数据或通过规则定义的数据抽取到“目标数据库”;

(3)考虑到这些数据的保密性因素,需要对所抽取的数据进行内部处理,包括坐标变换、涉密过滤、精度降低或平移拉伸等;

(4)对处理过的数据进行装载入库,形成专题数据,以供各部门的使用。

达到的预期效果。主要包括空间数据的建模、数据库连接、数据一键抽取、数据查询抽取、数据转换(坐标转换)、及数据的入库(包括第三方数据的入库)等功能模块的设计与代码实现。

7 结束语

笔者从理论上尝试将ETL 技术和GIS 技术相结合,对基础地理信息数据进行抽取、清洗、加工、整理及转换,最后装载到框架数据库,从而更好地解决“信息孤岛”的问题,实现空间数据的共享。

猜你喜欢

数字城市空间数据入库
重磅!广东省“三旧”改造标图入库标准正式发布!
中国食品品牌库入库企业信息公示①
数字城市与城市地理信息系统
元数据驱动的多中心空间数据同步方法研究
数字城市到智慧城市的思考与探索
数字城市的探讨
身临其境探究竟 主动思考完任务——《仓储与配送实务》入库作业之“入库订单处理”教学案例
刍议数字化城市建设中基础测绘技术的应用
批量地籍图入库程序设计方法
基于文件系统的分布式海量空间数据高效存储与组织研究