使用kettle进行数据的多表关联


申明: 未经许可,禁止以任何形式转载,若要引用,请标注链接地址
全文共计1982字,阅读大概需要3分钟

一、任务描述

本实验任务主要完成基于ubuntu环境的使用kettle进行数据的多表关联的工作。通过完成本实验任务,要求学生熟练掌握使用kettle进行数据的多表关联的方法,为后续实验的开展奠定ETL平台基础,也为从事大数据平台运维工程师、大数据技术支持工程师等岗位工作奠定夯实的技能基础。

二、任务目标

1、掌握使用kettle进行数据的多表关联

三、任务环境

Ubuntu16.04、Java1.8、Kettle7.1

四、任务分析

Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。
  Kettle组成部分:
在这里插入图片描述

Kettle概念模型图:
在这里插入图片描述

Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。
  Transformation(转换):
  Transformation(转换)是由一系列被称之为step(步骤)的逻辑工作的网络。转换本质上是数据流。下图是一个转换的例子,这个转换从文本文件中读取数据,过滤,然后排序,最后将数据加载到数据库。本质上,转换是一组图形化的数据转换配置的逻辑结构,转换的两个相关的主要组成部分是step(步骤)和hops(节点连接),转换文件的扩展名是.ktr。
  Jobs(工作):
  Jobs(工作)是基于工作流模型的,协调数据源、执行过程和相关依赖性的ETL活动,Jobs(工作)将功能性和实体过程聚合在了一起,工作由工作节点连接、工作实体和工作设置组成,工作文件的扩展名是.kjb。
  我们的任务是:
1、掌握使用kettle进行数据的多表关联

五、 任务实施

步骤1、环境准备

右击Ubuntu操作系统桌面,从弹出菜单中选择【Open Terminal Here】命令 打开终端。
  启动kettle。

在这里插入图片描述

图1 启动kettle
  开启mysql服务。如图2所示。

在这里插入图片描述

图2 开启mysql

步骤2、创建Transformmations

新建一个”Transformmations”(双击Transformmations即可),然后选择”Design”栏,将”Input”下的”Table input”(拖过去两个)和”Lookup”栏下的”Stream lookup”,以及”Output”栏下的”Table output”三个图标拖进工作区。按住Shift键,鼠标拖拽”Table input”图标到”Stream lookup”图标上,产生连线。同理”Table output”的线也连上。注意箭头方向。如图3所示

在这里插入图片描述

图3 创建Transformmations
  设置”Table input”相关内容(双击图表即可)。如图4-6所示。

在这里插入图片描述

图4 设置”Table input”相关内容

在这里插入图片描述

图5 设置”Table input”相关内容

在这里插入图片描述

图6 设置”Table input”相关内容
  设置”Table input 2”相关内容(双击图表即可)。如图7-9所示。

在这里插入图片描述

图7 设置”Table input 2”相关内容

在这里插入图片描述

图8 设置”Table input 2”相关内容

在这里插入图片描述

图9 设置”Table input 2”相关内容
  设置”Stream lookup”相关内容(双击即可)。如图10-11所示。

在这里插入图片描述

图10 设置”Stream lookup”

在这里插入图片描述

图11 设置完毕
  设置”Table output”相关参数,双击”Table output”即可,mysql数据库密码为”root”。如图12所示。

在这里插入图片描述

图12 设置”Table output”
  设置目标表。如图13所示。

在这里插入图片描述

图13 设置目标表
  设置字段映射,最后点击”OK”完成整个设置。如图14所示。

在这里插入图片描述

图14 设置字段映射

步骤3、运行任务

运行,将两张表相互关联,批量导入到数据库。如图15-16所示。

在这里插入图片描述

图15 运行任务

在这里插入图片描述

图16 保存任务
  查看运行结果。如图17所示。

在这里插入图片描述

图17 查看运行结果
  重新打开一个终端,进入mysql,切换到kettleDB数据库,检验记录是否导入。如图18-19所示。

在这里插入图片描述

图18 查看表

在这里插入图片描述

图19 查看表数据

♥ 知识链接
ETL是BI/DW( Business Intelligence/Data Warehouse , 商务智能/数据仓库)的核心和灵魂,按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。

♥ 温馨提示
ETL是数据抽取(Extract)、清洗(Cleaning)、转换(Transform)、装载(Load)的过程。是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不懂开发的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值