案例介绍:

通过Kettle工具,对数据进行检验操作

案例实现:

1.打开Kettle工具,创建转换

使用Kettle工具,创建一个转换data_validation,并添加“自定义常量数据”控件、“计算器”控件、“数据检验”控件、“空操作”控件以及Hop跳连接线。

kettle REST client数据长度 kettle数据校验步骤_数据

2.配置”自定义常量数据”控件

双击“自定义常量数据”控件,进入“自定义常量数据”界面配置实验用数据;单击“元数据”选项卡,添加字段常量ProductionDate、ProductionName、ProductionNumber以及CommoditySales并指定其数据类型;单击“数据”选项卡,添加自定义的数据。

kettle REST client数据长度 kettle数据校验步骤_java_02

kettle REST client数据长度 kettle数据校验步骤_控件_03

3.配置”计算器”控件

双击“计算器”控件,进入“计算器”界面;在“字段”处,添加一个新字段UnitPrice,用于存储计算出的产品单价数据;在“字段A”和“字段B”处的下拉选项中分别选择“CommoditySales”(销售额)和“ProductionNumber”(销售数量)字段;在“计算”处的下拉框中选择“A/B”,即表示将字段A与字段B进行相除计算。

kettle REST client数据长度 kettle数据校验步骤_开发语言_04

4.配置”数据检验”控件

双击“数据检验”控件,进入“数据检验”界面;单击【增加检验】按钮,增加检验条件,这里我们制定的检验条件有三个,即日期(ProductionDate)不能在2019年1月1日之前、产品名称(ProductionNumber)必须都是小写以及单个产品价格(UnitPrice)不能超过10这三个检验条件;单击【增加检验】按钮,弹出“输入检验的名称”窗口,在该窗口中添加检验名称date_verify用于校验如期,添加后单击【确定】按钮关闭“输入检验的名称”窗口。点击校验date_verify,右边的空白框中会出现配置第一个条件的相关参数。在“要检验的字段名”处,添加要检验的字段;在“错误代码”和“错误描述”处自定义检验到错误数据时日志的输出内容;勾选“检验数据类型”处的复选框;在“数据类型”处指定数据类型;在“转换掩码”处输入与指定检验字段相同的日期格式;在“最小值”处添加检验条件。

kettle REST client数据长度 kettle数据校验步骤_字段_05

单击【增加检验】按钮,弹出“输入检验的名称”窗口,在该窗口中添加检验名称name_verify用于校验商品名称,添加后单击【确定】按钮关闭“输入检验的名称”窗口。在“要检验的字段名”处,添加要检验的字段;在“错误代码”和“错误描述”处自定义检验到错误数据时日志的输出内容;在“合法数据的正则表达式”处添加检验条件进行判断,这里添加的正则表达式用于校验产品名称是否为小写。

kettle REST client数据长度 kettle数据校验步骤_字段_06

单击【增加检验】按钮,弹出“输入检验的名称”窗口,在该窗口中添加检验名称price_verify用于校验产品单价,添加后单击【确定】按钮关闭“输入检验的名称”窗口。在“要检验的字段名”处,添加要检验的字段;在“错误代码”和“错误描述”处自定义检验到错误数据时日志的输出内容;勾选“检验数据类型”处的复选框;在“数据类型”处指定数据类型;在“小数点符号”处添加小数点符号,即“.”;在“最大值”处添加检验条件。

kettle REST client数据长度 kettle数据校验步骤_java_07

5.配置”空操作(什么也不做)”控件

单击选中“数据检验”控件,然后按住Shift键,通过分发方式设置“主输出步骤”连接到“空操作(什么也不做)”控件;设置“错误处理步骤”连接到“空操作(什么也不做)2”控件。

kettle REST client数据长度 kettle数据校验步骤_控件_08

6.运行转换data_validation

单击转换工作区顶部的     按钮,运行创建的转换data_validation。

kettle REST client数据长度 kettle数据校验步骤_开发语言_09

选中“空操作(什么也不做)2”控件,单击执行结果窗口的“Preview data”选项卡,查看是否将不符合校验规则的数据检验出来。

kettle REST client数据长度 kettle数据校验步骤_字段_10