
政府、企业信息化过程中存在大量的分散的数据、这对管理、决策、统计等造成了很多不便。虽然某一系统满足了企业某一特定的业务需求,数据有自身的特点,其它子系统很难使用别的子系统的数据,这不利于提高生产效益和做出正确及时的决策。
数据集成可以实现信息数据共享,解决困扰我们生产、管理中的问题。我们运用kettle数据集成中间件实现各种异构数据库的数据抽取、转换、装载,以及自动的数据备份、更新,保证了数据的综合再运用、数据共享、以及数据安全等。
1.采集各种数据源数据
我们采用开源的kettle作为ETL工具采集各种不同的数据源数据。Kettle从源系统中提取数据,转换数据为一个标准的格式,并加载数据到目标数据存储区,通常是数据仓库。ETL的体系结构图如下:

kettle支持相当广的数据源,常用的如Oracle、Sql server,mysql等、以及 MaxDB (SAP DB) , Hypersonic , SAP R/3 system , Borland Interbase , 另外还包括Excel , CSV(Comma Separated Value逗号分隔值) , LDAP(轻量级目录访问协议 ) 等。即便格式比较复杂的数据,我们也可以用文本文件( 如.txt文件)将数据导入我们的目的数据源。
作为开源的kettle完全由java实现,由此具备了跨平台性,能够运行在各种操作系统之上。Kettle通过JDBC、ODBC、JNDI、OCI等技术支持的数据库多达27种。同时支持txt、csv、xls、zip、xml文件作为输入或输出,这为我们提取多数据源数据提供了完全的保障。
2.对数据的加工处理
Kettle的一些控件为各种更为复杂的数据也提供了方便的支持,如计算器步骤提供了丰富的计算类型(如下图),这为采集复杂数据提供了便捷的方法。

对于复杂的数据加工,由于kettle支持JavaScript,我们应用JavaScript编程处理复杂的业务处理。
3.实现各种级别的数据备份更新
KETTLE的Job有定时功能,可以每天、每周、每月以及以一定时间间隔执行数据采集备份。具体如下图所示
这样自动的调度功能提高了数据的安全性、减轻了数据库管理员的工作。
增量更新是一个比较依赖与工具和设计方法的过程,Kettle中主要提供Insert / Update 步骤,Delete 步骤和Database Lookup 步骤来支持增量更新,增量更新的设计方法也是根据应用场景来选取的。
1.中国网通天津分公司客服服务监控系统
2.天津高新区宏观经济在线联机多维分析系统
3.天津高新区重点企业监控系统
4.塘沽政府网站群建设及开发项目