kettle入门教程

Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。

百度经验:jingyan.baidu.com

方法/步骤

 
  1. 1

    Kettle的下载与安装(在本文中使用的kettle版本为6.1.0.1-196)

    kettle的最新下载地址:community.pentaho.com/projects/data-integration/

  2. 2

    打开kettle

    首先解压下载下来的压缩包如:pdi-ce-6.1.0.1-196.zip

    然后打开Spoon.bat,如图所示:

    打开后请耐心等待一会儿时间。

  3. 3

    建立转换。

    在文件->新建装换。

    新建转换后在左边的主对象树中建立DB连接用以连接数据库。如图所示:

    建立数据库连接的过程与其他数据库管理软件连接数据库类似。

    注意:在数据库链接的过程中,可能会报某个数据库连接找不到的异常。那是因为你没有对应的数据库链接驱动,请下载对应驱动后,放入kettle的lib文件夹。

  4. 4

    简单的数据表插入\更新

    (1)新建表插入

    在左边的面板中选择“核心对象”,在核心对象里面选择“输入->表输入”,用鼠标拖动到右边面板。如图所示:

  5. 5

    双击拖过来的表,可以编辑表输入。

    选择数据库连接和编辑sql语句,在这一步可以点击预览,查看自己是否连接正确。

  6. 6

    (2)通过插入\更新输出到表。

    在左边面板中选择核心对象、选择“输出->插入\更新”如图所示:

  7. 7

    编辑插入更新:

    首先:表输入连接插入更新。

    选中表输入,按住shift键,拖向插入更新。

  8. 8

    然后:双击插入更新,编辑它。

    到这里基本上,这个转换就要做完了,可以点击运行查看效果,看是否有误,这个要先保存了才能运行,可以随意保存到任何一个地方。

  9. 9

    使用作业控制上面装换执行。

    使用作业可以定时或周期性的执行转换,新建一个作业。并从左边面板拖入start 和转换。

  10. 10

    双击start可以编辑,可以设置执行时间等等

  11. 11

    点开装换,可以设置需要执行的转换任务,比如可以执行上面我们做的转换,XXX.ktr

    最后点击运行即可。

     
### Kettle ETL 工具基础教程与入门指南 Kettle 是一款开源的 ETL(Extract-Transform-Load)工具,其核心功能在于高效地进行数据抽取、转换和加载。以下是关于 Kettle 的基础教程与入门指南: #### 1. Kettle 简介 Kettle 是一个纯 Java 编写的开源工具,支持在 Windows、Linux 和 Unix 平台上运行[^2]。它无需安装,解压即可使用,并且提供了图形化用户界面(GUI),便于设计和管理复杂的数据流任务。Kettle 支持两种主要的脚本文件类型:Transformation 和 Job[^3]。 - **Transformation**:用于定义数据的基础转换操作,例如数据提取、清洗、转换等。 - **Job**:用于控制整个工作流,包括 Transformation 的执行顺序以及其他任务的调度。 #### 2. 安装与配置 要开始使用 Kettle,首先需要下载并安装该工具。可以通过以下步骤完成基本配置: 1. 访问 [SourceForge](https://sourceforge.net/projects/pentaho/) 下载 Kettle 的最新版本[^5]。 2. 解压缩下载的文件到目标目录。 3. 将数据库驱动(如 MySQL 驱动 `mysql-connector-java-5.1.49.jar`)复制到 Kettle 的 `lib` 目录下,以便连接到相应的数据库[^5]。 #### 3. 图形化界面 Kettle 提供了两个主要的图形化工具: - **Spoon**:用于设计和调试 Transformation 和 Job。 - **Pan 和 Kitchen**:分别用于命令行运行 Transformation 和 Job。 #### 4. 基础操作 以下是 Kettle 的一些基础操作示例: - **数据提取**:通过“Table Input”步骤从数据库中读取数据[^2]。 - **数据转换**:使用“Calculator”或“JavaScript”步骤对数据进行计算或逻辑处理。 - **数据加载**:通过“Table Output”步骤将数据写入目标数据库。 #### 5. 示例代码 以下是一个简单的 Transformation 示例,展示如何从数据库中提取数据并写入另一个数据库: ```properties # 数据库连接配置 Connection Name: SourceDB Connection Type: MySQL Hostname: localhost Port: 3306 Database Name: source_db Username: root Password: password ``` ```sql -- SQL 查询示例 SELECT id, name, age FROM users WHERE age > 18; ``` ```properties # 目标数据库连接配置 Connection Name: TargetDB Connection Type: MySQL Hostname: localhost Port: 3306 Database Name: target_db Username: root Password: password ``` #### 6. 学习资源 - 官方文档:[Pentaho Documentation](https://help.pentaho.com/) - 社区支持:[Pentaho Community Forum](https://forums.pentaho.com/) ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值