1.转换案例

最容易实现的简单案例就是生成随机数,并存储到txt文件 新建一个转换保存为test_random(后缀为.ktr) 通过拖拽插件方式,在核心对象->输入和输出分别拖拽“生成随机数”和“文本文件输出”两个按钮, 然后点击“生成随机数”并按下shift键,用鼠标指向“文本文件输出”,以生成剪头,表示数据流向。如下图:

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl工程师

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl工程师_02

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl工程师_03

 编辑输入流,即“生成随机数”按钮,如图所示

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl工程师_04

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl_05

 

2. 转换案例

然后编辑输出流,即“文本文件输出”按钮,如图所示

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_大数据_06

查看结果,如图所示

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl_07

 

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_字段_08

 

3.正式实验

通过上述简单实验,我们知道了输入输出流的基本操作,接下来我们进入正式实验

1)将上述实验中的输入输出全部改为Excel。进行相关配置说明如下: Excel输入:

在文件选项下,表格类型根据实际进行适配(xls or xlsx),在文件或目录后,点击“浏览”选择自己的源数据文件,然后点击“添加”;

在工作表选项下,点击“获取工作表名称...”添加工作表,即Excel中的sheet1;

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl_09

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_数据仓库_10

 

 在字段选项下,点击“获取来自头部数据的字段...”自动获取字段,由于原Excel中整型数据转入会变成浮点型,所以需要进行更改,如图所示: 

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_字段_11

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_数据仓库_12

 

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_大数据_13

 

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl工程师_14

 

1)将上述实验中的输入输出全部改为Excel

进行相关配置说明如下: Excel输出:只需要配置输出文件名即可,其他均为默认。

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl工程师_15

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_字段_16

 

2)下来需要处理的就行核心步骤,即转换。首先针对生成数据1进行分析,由于kettle中分组需要首先进行排序,从而需要处理的点有:

(1)将挂号日期时间截取到日;

(2)对年龄按照一定标准进行转换(自己定义);

(3)按照待分组的字段进行排序;

(4) 进行分组统计。 按照上述思路,在“转换”和“统计”核心对象中,分别找到对应组件,完成基本数据流节点配置,如图所示: 

 

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_大数据_17

在“字段选择”组件中,对时间进行处理。 在元数据选项中,需要对Date进行转换成String,格式设置为yyyy-MM-dd,同时可以对字段进行更名操作。 另外还可以对字段进行选择,修改,移除。如图所示:

 

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl_18

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_etl工程师_19

 

3)在“数值范围”组件中,对年龄进行处理,划分标准自己定义,如图所示:

 

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_大数据_20

4)在“排序记录”组件中,按照生成数据要求,需要对日期,性别,年龄段进行排序,如图所示:

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_数据仓库_21

 

 5)在“分组”组件中,进行分组统计,如图所示:

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_数据仓库_22

6)执行,结果如图所示:

kettle抽取mysql数据库表的配置方法 kettle数据抽取案例_字段_23