一、完全去重
通过Kettle工具,消除CSV文件merge.csv中完全重复的数据。
1、数据准备
合并后的用户名单存放在CSV文件merge.csv中,内容如图所示。
2、repeat_transform转换
(1)通过使用Kettle工具,创建一个转换repeat_transform,并添加“CSV文件输入”控件、“唯一行(哈希值)”控件以及Hop跳连接线,具体如图所示。
(2)各控件配置
1)配置CSV文件输入控件:
双击“CSV文件输入”控件,进入“CSV文件输入”配置界面。
单击【浏览】按钮,选择要进行完全去重处理的CSV文件merge.csv;再单击【获取字段】按钮,Kettle会自动检索CSV文件,并对文件中的字段类型、格式、长度、精度等属性进行分析。
单击【预览】按钮,查看CSV文件merge.csv的数据是否加载到CSV文件输入流中。
2)配置”唯一行(哈希值)”控件:
双击“唯一行(哈希值)”控件,进入“唯一行(哈希值)”配置界面。
在“用来比较的字段”处,添加要去重的字段,这里可以单击【获取】按钮,获取要去重的字段。
3、运行repeat_transform转换
选中“唯一行(哈希值)”控件,单击执行结果窗口的“Preview data”选项卡,查看是否消除CSV文件merge.csv中完全重复的数据。
二、不完全去重
通过Kettle工具,将文件people.txt中不完全重复的数据进行去重处理。
1、数据准备
现在有一份用户访问网站的数据文件people.txt,内容如图所示。
2、part_repeat_transform转换
(1)通过使用Kettle工具,创建一个转换part_repeat_transform,并添加“文本文件输入”控件、“唯一行(哈希值)”控件以及Hop跳连接线,具体如图所示。
(2)各控件配置
1)配置文本文件输入控件:
双击“文本文件输入”控件,进入“文本文件输入”配置界面。
单击【浏览】按钮,选择要去重的文件people.txt;单击【增加】按钮,将要去重的文件people.txt添加到转换part_repeat_transform中。
单击“内容”选项卡;清除分隔符处的默认分隔符“;”,并单击【Insert TAB】按钮,在分隔符处插入一个制表符;取消勾选“头部”复选框。
单击“字段”选项卡;根据文件people.txt的内容添加对应的字段名称,并指定数据类型。
单击【预览记录】按钮,查看文件people.txt的数据是否成功抽取到文本文件输入流中。
2)配置唯一行(哈希值)控件
在“用来比较的字段”处,添加要比较去重的字段,即Name、UserLevel、Phone字段。
3、运行part_repeat_transform转换
选中“唯一行(哈希值)”控件,单击执行结果窗口的“Preview data”选项卡,查看是否消除文件people.txt中不完全重复的数据。