(1) kettle 环境安装
kettle是一个开源的java编写的ETL(Extract,Transform and Load抽取、转换、载入)工具,ETL工具在数据仓库项目使用非常频繁,kettle也可以应用在以下一些场景: * 在不同应用或数据库质检整合数据 * 把数据库中的数据导出到文本文件 *大批量数据装载入数据库 * 数据清洗 * 集成应用相关项目。
Kettle 使用非常简单,可以在window、Linux、Unix上运行不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。网上资源应该随处都可以找到,需要资源的就私聊我吧!这里就不贴链接了。贴个kettle中文网站吧:kettle中文网。网站里也包含了部分教程以及下载地址。下载了软件压缩包之后,因为是绿色软件,即无需安装,在windows直接启动sponn.bat文件便可以运行。
可以看到主界面如下,需要注意的是最重要的两种文件转换(transformation)和作业(job),transformation完成针对数据的基础转换,job则完成整个工作流的控制。
可以看到 kettle的核心对象非常的多,所以功能十分的强大。
从输入对象中可以看到,可以转换多种的数据格式。
接下来我们先从CSV文件(以逗号为分隔符)载入到mysql数据库中为例。
(1) CSV 文件 数据 导入到 mysql 数据库。
a. 先从输入里拖动图标“csv 文件输入” ,以及输出核心对象 选择 “表输出” 因为你需要把 csv文件里的导入到mysql数据库里的一张表。此时需要连接两个图标,表示数据流向 。按住 “shift”键 点击 csv文件输入延伸自 表输出。接下来开始配置输入输出设置。
b. 双击“csv文件输入图标” ,从文件名中选择你需要导入的CSV文件,设置文件编码为你所需要的(一般为utf-8),点击获取字段会从文件中获取相应的字段,这就是源字段。数据库中的属性为目标字段。
c. 点击表输出的时候一般是没有数据库连接的,所以你需要点击“新建”按钮,编辑数据库链接,一般是URL地址,端口,用户名密码等等(编辑完毕需要点击测试按钮,测试能否连接数据库,一般没有mysqlJDBC驱动,需要在网上下载驱动在放在kettle目录下的lib文件夹下)。选择目标表,即你需要导入的数据的那一张表,如果还没有,那就自己创建。需要注意的是 编辑 “提交记录数量”,即应该大于或等于你提交的CSV文件行数。 此时还需要点击选项卡的“数据库字段”。如果之后出现数据不匹配的情况,一般都是这里出现“毛病”。
d.现在基本上已经配置完成,可以点击界面运行图标。选择日志的时候,选择基本日志就好,如果要看每行详细情况,一般选择行级日志。然后就能够运行了。
网友评论