APP下载

基于ETL技术的数据交换平台在电子政务领域中的应用

2016-10-18王晓波

电脑知识与技术 2016年21期
关键词:转换电子政务

王晓波

摘要:ETL作为构建数据仓库的一项重要技术,越来越多地应用于各个领域。该文简单介绍了ETL的基本原理,以及利用ETL技术,建立数据交换平台,实现电子政务领域的数据整合。

关键词:电子政务;ETL;抽取;转换;加载;数据交换平台

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)21-0278-03

Abstract: ETL is very important in constructing Data Warehouse,and is used in many fields. This paper introduces the principles of ETL, and the data integration of E-government with the data exchange platform using ETL.

Key words: E-government; ETL; Extract; Transform; Load; Data exchange platform

1 引言

随着信息技术的不断普及,现国家电子政务外网和电子政务内网已逐步覆盖至县,省级电子政务网络已形成较为完善的体系。但由于信息资源共享机制尚未建立,部门自成体系现象严重,被隔离成一个个独立的“孤岛”,资源不能得到良好的整合,信息不能够得到充分的共享。为提高公共服务效率,需要将各部门的资源整合,更好的实现资源共享,从而为公众提供无缝式的、一体化电子化服务。利用ETL技术建立数据交换平台,可将各部门数据进行整合,从而实现信息共享。

利用ETL技术建立数据交换平台,可将各部门的数据抽取到临时中间库后,然后对数据进行清洗、转换,最后加载到正式数据库中,解决各部门资源共享问题。

2 ETL简介

ETL,即抽取(Extract)、转换(Transform)和加载(Load) ,将各种数据源(分布式、异构等)的各类数据(如关系型数据、文件数据等)抽取到临时中间库后,然后根据业务需要,用相关的规则进行清洗、转换并集成,最后加载到目的数据库中,有效的解决了由于数据内容、数据格式和数据质量等原因造成的无法共享的各种棘手问题。简单的ETL体系结构如图1所示:

3 数据交换平台在电子政务领域中的应用

针对现全省各级各部门之间信息不能共享,利用ETL技术,建立数据交换平台,可对全省各级各部门的资源进行有效地整合。其结构图如图2所示:

数据交换平台主要包括交换桥接子系统、交换传输子系统和交换管理子系统。

3.1交换桥接子系统

根据业务需求,交换桥接子系统用来采集各部门的业务数据,能够支持异构数据库,多种服务器软硬件,不同的文件数据源间进行高效的数据采集,努力实现“零编程”或“少编程”。

3.1.1数据抽取方式

1)全量抽取:全量抽取较为简单,即将数据源中数据(如,表或视图)原封不动的从数据库中抽取出来。跟数据迁移或数据复制类似。

2)增量抽取:顾名思义,抽取增量数据(包括新增或修改的数据)。即抽取自上次抽取以来数据库中表或视图中新增或修改的数据。

3.1.2数据交换方法设计

1)触发器方法。即在要抽取的数据库中数据表上建立相应的触发器。根据对数据表的操作类型来看,需要建增加、删除和修改三个触发器;当对源表的数据进行增加、删除或修改操作时,相应的触发器会被触发,就会将变化的数据写入一个临时表;抽取数据时从这个临时表进行数据抽取,临时表中的数据一旦被抽取后,应当对其进行标记或者删除。

2)时间戳方法。改造各部门的业务系统,在需要抽取的业务表中添加时间戳字段,字段类型为时间类型;若业务系统对该条数据进行了更新或修改时,也业务系统需同时修改时间戳字段;数据抽取时,通过时间戳字段与系统时间的比较来决定进行数据的抽取。数据增量抽取的原理如图3:

3)整表比对法。先抽取源数据,并根据相应的规则进行转换,完成后先不插入目标表,而是将源数据的每条数据与目标表中的数据进行对比。对比时,可根据表的主键值进行新增或更新的判断。若目标表已存在该主键值的,表明目标表中该数据已存在,然后在进行其余字段的对比,若完全相同,则不进行更新操作,反之,需进行更新操作;若目标表没有存在该主键值,表明目标表中该数据不存在,进行新增操作即可。

4)全表删除插入法。进行时间抽取时,首先删除目的表的全部数据,然后将数据全部重新加载。

5)日志表法。在业务系统中添加维护日志功能,建立系统日志表,当业务数据发生变化时,维护日志表的内容及时更新,然后通过读取维护日志表中的数据进行数据抽取以及如何抽取。

6)主动交换法。各部门按照标准设置的数据交换格式(xml),通过自己业务系统开发数据交换程序,主动定时提交数据到指定位置。

7)人工报送方法。提供一个简易的数据录入系统,针对没有业务系统或数据量不大、更新频率不高的部门,需要报送数据时,直接使用此系统。

3.1.3 数据交换机制

根据业务系统需求,建立实时交换、定时交换机制、单向交换机制和双向交换机制。

1)实时交换机制

实时交换机制采用触发器机制,依靠数据库自身的实时触发管理,确保数据交换的实时同步,实时同步时间在毫秒级。触发器分为INSERT、UPATE、DELETE三种。即业务表在数据变化时根据三种触发条件判断属于那种数据更新方式并定位数据记录。在数据加载时通过定位信息获取数据并按照触发类型进行数据更新同步。

2)定时交换机制

定时交换机制采用时间戳方式。当数据加载时,通过上次运行时间、本次运行时间与时间戳字段的比较来决定进行何种数据抽取。

3)单向交换机制

无论是定时还是实时交换机制,都可以设定为单向交换。即针对一个数据源,只是做同一种操作向其他数据源做数据同步。

4)双向交换机制

对于实时数据同步可以支持双向交换。即针对一个数据源,在往其他数据源做数据同步的同时,该数据源又要受被其同步的数据源的变化做实时同步。

3.1.4 数据转换和加工

利用ETL技术,选择数据库方法或组件化方法对抽取的数据进行数据转换和加工。

1)数据库方法:利用关系型数据库对数据库中的数据进行加工。如,在SQL查询语句中添加where条件进行过滤,查询中重命名字段名与目的表进行映射,substr函数,case条件判断等。

2)组件化方法。组件化方法包括以下功能:字段映射、数据过滤、数据清洗、数据替换、数据计算、数据验证、数据加解密、数据合并、数据拆分等。此外,组件之间可以任意组装。另外,提供脚本支持,使得用户可以通过编程的方式去制定数据的转换和加工。

3.1.5 数据装载

1)SQL语句装载方法:直接使用SQL语句进行insert、update、delete操作,此方式进行了日志记录并且是可恢复的。

2)数据批量装载方法:数据批量装载方法包括数据库bcp、bulk、关系数据库特有的批量装载工具或api等。

3.1.6 日志功能

提供业务系统桥接过程中的数据传输日志功能。

3.2 交换传输子系统

3.2.1 数据封装

系统采用XML国际标准作为数据封装接口规范,数据在传输前将数据封装成XML格式的传输对象。

3.2.2 数据传输

提供可靠队列的通信机制,保障队列持久性;提供不错、不漏、不重的传输机制;支持断点续传、网络容错;支持点对点消息传输和发布/订阅消息传输;支持JAVA编程、JMS和WEBSERVICE等接入方式;支持应用的实时、定时、主动、被动模式,实现同步/异步消息通信手段,实现数据交换平台多种交换模式的通信支持;支持数据高效率传输,适应网络传输速率,提供透明压缩传输功能,提供通信服务端集群与均衡负载能力,有效应对多客户端大并发需求,屏蔽性能瓶颈;支持复杂消息传输模式,可以直接对大文件进行传输;提供优先级处理能力;提供标准传输组件。

3.2.3 交换日志

提供底层交换日志功能,包括错误日志的记录。

3.3 交换管理子系统

主要内容包括系统配置、监控管理、交换节点管理、数据适配、交换流程管理和日志管理等。

4 结束语

本文主要简述了ETL技术,着重介绍了利用用ETL技术建设的数据交换平台,整合全省各部门数据,实现了信息的共享。同时也为ETL技术在其他领域的应用提供了一个很好的借鉴。

参考文献:

[1] 郭志懋, 周傲英. 数据质量和数据清洗研究综述[J]. 软件学报, 2002,13(11):2076-2082.

[2] 张宁. 数据仓库中ETL技术的研究[J]. 计算机工程与应用, 2002(24):213-216.

[3] 缪嘉嘉,邓苏,刘青宝.ETL综述[J]. 计算机工程, 2004(3).

[4] 白洪涛,孙吉贵,莫旭,杨凤杰. 一个专用的ETL程序的实现[J]. 计算机应用, 2004(2).

猜你喜欢

转换电子政务
论基于云的电子政务服务平台构建
我国电子政务系统的安全分析与防范
浅议长期股权投资核算方法的转换
大数据时代档案管理模式的转换与创新
论英汉语翻译中语内翻译向语际翻译的转换
浅谈平面图与立体图的思维培养
电子政务工程项目绩效评价研究
电子政务中安全问题的相关研究
试论基于Petri网的电子政务系统