Kettle通用数据贴源作业设计

Posted W先森

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kettle通用数据贴源作业设计相关的知识,希望对你有一定的参考价值。

本设计基于以下需求提出

1. 快速接入数据源表(贴源/落地)

2. 无须给单独表开发转换/作业

3. 动态生成数据源连接, 表字段等信息(预先保存在数据仓库中)

 

本设计所需条件

1. 数据源为关系型数据库

2. 不同数据源需要写一小段Java Scripts以保证数据源连接可用

 

总体作业结构

jb_STG_SetVariable: 设置及生成后续转换所需信息
tf_STG_LoadData : 实际贴源转换
jb_Update_Flag : 更新运行后状态

 

jb_STG_SetVariable:

tf_STG_Inc_SetVariable : 获取数据表运行增量时间
tf_STG_selectSource_SetVariable: 获取并设置数据表名,字段名,数据源连接,用户,密码

 

数据表的运行增量时间在数据仓库中进行管理, 每次运行该作业前将每天更新对应表的增量日期/时间.

数据表名,字段名,数据源连接,用户,密码 也是通过数据仓库中一系列的参数表设置完成, 此过程当需要接入一整个数据库(20张表以上)时可通过脚本自动完成, 不在本次Kettle作业设计讨论范围.

 

下面再来看看 tf_STG_Inc_SetVariable 和 tf_STG_selectSource_SetVariable 的内容:

tf_STG_Inc_SetVariable:

 

tf_STG_selectSource_SetVariable:

 

最后jb_Update_Flag作业所做动作为更新日志表记录, 此处与仓库设计关系较大, 不同仓库有各自具体情况, 故不作详细说明.

 

以上是关于Kettle通用数据贴源作业设计的主要内容,如果未能解决你的问题,请参考以下文章

kettle基本使用

Kettle基本使用

Kettle_设置变量的两种方法

用kettle怎么转换10条数据

如何从java将数据库连接传递给Kettle作业

KETTLE后台进程执行配置方式