5.4.2数据规范化处理

由于数据源系统分散在各个业务线上,不同业务线对于数据的要求、理解和规范也不同,这样就会导致对于同一数据对象的描述规格完全不同,因此在数据清洗的过程中需要将统一数据规范的数据抽取出来进行规范处理。为了提高数据的可读性及合理性,企业会要求数据遵守一定的规范,即检查数据都必须遵守预定义的业务规则,找出不符合业务规则的数据。

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.运行转换 

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值