第五章——数据清洗与校验(案例八:数据规范化处理)

本文详细介绍了如何使用Kettle工具创建一个名为data_validation的转换,配置了自定义常量、计算器、数据检验控件,以及设置空操作和错误处理流程。步骤包括配置字段、计算单元价、设置检验规则确保数据质量,最终通过实例展示数据校验效果。
摘要由CSDN通过智能技术生成

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

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

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

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

 

3.配置”计算器”控件

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

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

双击“数据检验”控件,进入“数据检验”界面;单击【增加检验】按钮,增加检验条件,这里我们制定的检验条件有三个,即日期(ProductionDate)不能在2019年1月1日之前、产品名称(ProductionNumber)必须都是小写以及单个产品价格(UnitPrice)不能超过10这三个检验条件;单击【增加检验】按钮,弹出“输入检验的名称”窗口,在该窗口中添加检验名称date_verify用于校验如期,添加后单击【确定】按钮关闭“输入检验的名称”窗口。

 点击校验date_verify,右边的空白框中会出现配置第一个条件的相关参数,在“要检验的字段名”处,添加要检验的字段;在“错误代码”和“错误描述”处自定义检验到错误数据时日志的输出内容;勾选“检验数据类型”处的复选框;在“数据类型”处指定数据类型;在“转换掩码”处输入与指定检验字段相同的日期格式;在“最小值”处添加检验条件。

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

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

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

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

6.保存并运行,成功后截图如下

 

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

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值