ETL - 实战 Kettle 第二讲

前(fei)言(hua)

现在我们开始较为复杂的转换,我们需要来自两个数据库的关联数据。我们需要来自旧数据库的订单数据,还需要来自新数据库的客户表主键 id 和 name 来填充外键。我们将创建两个表输入、一个记录集连接(关联)和一个表输出

  1. 创建一个新的转换,另存为“订单客户关联数据迁移”。
  2. 创建一个步骤表输入,新建数据库连接,为该步骤指定一个名称,编写查询,也可以直接点击获取SQL查询语句按钮获取,如下:
    ETL - 实战 Kettle 第二讲_第1张图片
  3. 创建另一个步骤表输入,步骤名称“获取客户表id”,选择现有的 new_db_order 连接,并编写以下查询:
    ETL - 实战 Kettle 第二讲_第2张图片
  4. 这是一个比较难理解的步骤。查找并添加步骤记录集连接(即关联 Merge Join)。此步骤的目的是在第一步和第二步的结果之间执行左外连接。PDI 的强大之处,就在于它可以合并来自不同数据库的两个表。连接步骤如下:
    ETL - 实战 Kettle 第二讲_第3张图片
  5. 根据截图配置步骤 Merge Join:
    ETL - 实战 Kettle 第二讲_第4张图片
  6. 创建一个步骤表输出,并连接新数据库,目标表为“order”,勾选“指定数据库字段”,并根据截图配置数据库字段,你也可以点击输入字段映射进行字段匹配:
    ETL - 实战 Kettle 第二讲_第5张图片
  7. 完成连接后的转换如图所示:
    ETL - 实战 Kettle 第二讲_第6张图片
  8. 最后,让我们保存转换,单击转换名称下面的三角形按钮执行转换。
    大致的流程我们已经学会了,让我们进入下一章,学习 PDI 其他实用功能,来优化我们的数据迁移。

你可能感兴趣的:(Kettle)