1.抽取CSV文件csv_extract.csv中的数据保存至数据库extract中的数据表csv中。
具体步骤如下:
(1)打开kettle工具创建一个转换csv_extract,并添加“CSV文件输入”控件,“表输出”控件以及Hop跳连接线,用于实现CSV文件的抽取功能。如图1.1所示。
图1.1
(2)配置“CSV文件输入”控件,双击此控件进入“CSV文件输入”界面,首先单击“浏览”按钮,选择要抽取的文件csv_extract.csv;接着单击“获取字段”按钮,Kettle自动检索CSV文件,并对文件中的字段类型、格式、长度等属性进行分析;然后单击“预览”按钮,查看文件中的数据是否抽取到CSV文件输入流中,单击“关闭”-“确定”按钮,完成“CSV文件输入”控件的配置。如图1.2和1.3所示。
图1.2
图1.3
(3)配置“表输出”控件,双击此控件进入“表输出”界面,首先单击“新建”按钮,配置数据库连接(数据库连接不再详细操作);接着单击数据表右侧的“浏览”按钮,选择输出的目标表,即数据表csv;勾选“指定数据库字段”复选框,用于数据表与文件中的字段匹配;然后选择“数据库字段”选项卡,单击“输入字段映射”按钮,弹出“映射匹配”对话框,依次选中“源字段”中的字段和“目标字段”中的对应字段,单击Add按钮将一对映射字段添加至“映射”框中;最后单击“确定”按钮,“表输出”控件配置完成。如图1.4所示。
图1.4
(4)运行转换csv_extract,实现将CSV文件中的数据抽取到数据表csv中,如图1.5所示。
图1.5
(5)查看数据表csv中的数据,通过SQLyog工具查看表csv是否已成功插入100行数据,如图1.6所 示。
图1.6
从图1.6中可以看到数据表csv成功插入100行数据。
2.抽取JSON文件json_extract.js中的数据保存至数据库extract中的数据表json中。
具体步骤如下:
(1)打开kettle工具创建一个转换json_extract,并添加“JSON input”控件,“表输出”控件以及Hop跳连接线,用于实现抽取JSON文件中key值为id、field和value的数据,并保存至数据表json中。如图2.1所示。
图2.1
(2)配置“JSON input”控件,双击此控件进入“JSON input”界面,首先单击“浏览”按钮,选择要抽取的文件json_extract.json;接着单击“增加”按钮,将所选择的文件添加到“选中的文件”处,然后单击“字段”选项卡,在“字段”选项卡中添加要抽取的数据字段,具体配置如图2.2和图2.3所示;最后单击“确定”按钮,完成“JSON input”控件的配置。
图2.2
图2.3
(3)配置“JSON input 2”控件,双击此控件进入“JSON input 2”界面,首先勾选“源定义在一个字段里?”复选框;接着在“从字段获取源”后的下拉列表中选择字段名,即data;然后单击“字段”选项卡,添加从字段data中抽取的field和value字段,具体配置如图2.4和图2.5所示;最后单击“确定”按钮,完成“JSON input 2”控件的配置。
图2.4
图2.5
(4)配置“表输出”控件,双击此控件进入“表输出”界面,首先单击“新建”按钮,配置数据库连接(数据库连接不再详细操作);接着单击数据表右侧的“浏览”按钮,选择输出的目标表,即数据表json;勾选“指定数据库字段”复选框,用于数据表与文件中的字段匹配;然后选择“数据库字段”选项卡,单击“输入字段映射”按钮,弹出“映射匹配”对话框,依次选中“源字段”中的字段和“目标字段”中的对应字段,单击Add按钮将一对映射字段添加至“映射”框中;最后单击“确定”按钮,“表输出”控件配置完成。如图2.6所示。
图2.6
(5)运行转换json_extract,实现将JSON文件中的数据抽取到数据表json中,如图2.7所示。
图2.7
(5)查看数据表json中的数据,通过SQLyog工具查看表json是否已成功插入6行数据,如图2.8所示。
图2.8
从图2.7中可以看到数据表json成功插入6行数据,说明我们成功的实现了将JSON文件 json_extract.json中key值为id、field和value的数据 抽取到数据表json中。
总结
上述的两个数据抽取的实例中都使用了控件来实现抽取文件中的数据保存到数据库的数据表中,其中,第一个实例中用到了“CSV文件输入”控件和“表输出”控件,第二个实例用到了“JSON input”控件和“表输出”控件。具体如下图所示。