因为新公司的原因,要用到这个软件,那么我们就来看一看它到底是干啥的。
简单介绍基本用法Kettle 的几个子程序的功能和启动方式转换和作业保存作业输入步骤简介转换步骤简介- 增加常量 流程步骤简介输出步骤简介总结
kettle是一款用纯java编写的开源的ETL工具,所以要想运行它电脑一定要有java环境(可以在命令行中输入java -version
查看当前电脑java的版本),
下载地址 (支持全平台,用起来也是比较方便),直接解压就能用,亲测不翻墙的话时快时慢,所以建议大家在下载的时候尽量翻墙
何为ETL?
抽取(Extract):一般抽取过程需要连接到不同的数据源,以便为随后的步骤提供数据。这一部分看上去简单而琐碎,实际上它是 ETL 解决方案的成功实施的一个主要障碍。
转换(Transform):任何对数据的处理过程都是转换。这些处理过程通常包括(但不限于)下面一些操作:
移动数据 根据规则验证数据 数据内容和数据结构的修改 将多个数据源的数据集成 根据处理后的数据计算派生值和聚集值加载(Load):将数据加载到目标系统的所有操作。
Spoon.bat: 图形界面方式启动作业和转换设计器。 Pan.bat: 命令行方式执行转换。
Kitchen.bat: 命令行方式执行作业。 Carte.bat: 启动web服务,用于 Kettle 的远程运行或集群运行。 Encr.bat: 密码加密 (请注意这里各个文件的名字,很有趣,类似于hadoop中的名字,这也许是属于国外程序猿的一种幽默吧)
Kettle 的 Spoon 设计器用来设计转换(Transformation)和 作业(Job)。
转换主要是针对数据的各种处理,一个转换里可以包含多个步骤(Step)。 作业是比转换更高一级的处理流程,一个作业里包括多个作业项(Job Entry),一个作业项代表了一项工作,转换也是一个作业项。操作界面如下
用户通过 Spoon 创建的转换、作业、数据库连接等可 以保存在资源库和 xml 文件中。
转换文件以 ktr 为扩展名,作业文件以 kjb 为扩展名 资源库可以是各种常见的数据库。可以在 Spoon 中自动创建资源库,资源库默认用户名和密码是admin/admin。输入类步骤用来从外部获取数据,可以获取数据的数据源包括,文本文件(txt,csv,xml,json)数据库、 Excel 文件等桌面文件,自定义的数据等。对特殊数据源和应用需求可以自定义输入插件。
输入内容部分截图如下:
转换类步骤是对数据进行各种形式转换所用到的步骤。
例子: - 字段选择 (就比如我们我负责的现在我们公司的数据库转移工作,字段选择很重要) - 计算器
流程步骤是用来控制数据流的步骤。一般不对数据进行操作,只是控制数据流。
例子: 过滤步骤
既然有输入和过滤,那么一定也要有输出了。输出步骤是输出数据的步骤,常见的输出包括文本文件输出、表输出等,可以根据应用的需求开发插件以其他形式输出。
例子: 表输出等,如下图
Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。
Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。
现在刚刚开始进行学习,所以只掌握了基本的知识,在公司后续的开发过程当中,我也会边学习边完善,尽快掌握这个软件更多的精髓。
新闻热点
疑难解答