栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Kettle笔记 —— 利用Transformation和job完成不同数据源的数据处理和写入

Kettle笔记 —— 利用Transformation和job完成不同数据源的数据处理和写入

Kettle是一款开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。

Kattle的工程存储方式有(1)以XML形式存储,(2)以资源库方式存储(不同的用户可以共同使用)

Kattle的两种设计:

  1. Transformation(转换):针对于数据的基础转换(着重于数据的ETL过程)
  2. Job(作业):完成整个工作流的控制(着重于不同步骤之间的控制流程)

区别:

  1. 一个Job中可以包含多个Transformation
  2. Transformation是数据流,Job是步骤流
  3. Job按照顺序执行,每一个步骤必须等待前一个步骤结束后才会执行
    Transformation是一次性启动所有的控件,然后数据流从第一个控件开始,一条记录,一条记录的流向最后一个控件

Kattle的组成

  1. Spoon(勺子)(Spoon.bat/Spoon.sh):图形化页面
  2. Pan(煎锅)(Pan.bat/Pan.sh)用命令行的形式调用Transformation
  3. Kitchen(厨房)(Kitchen.bat/Kitchen.sh)用命令行的形式调用Job
  4. Carte(菜单)(Carte.bat/Carte.sh)Carte是一个轻量级的Web容器,用于建立专用的、远程的ETL Server

具体使用

MySQL到MySQL

利用Transformation将数据从一张表输出到另一张表里面
在mysql数据库中创建两张表,分别是stu1和stu2,现在要将stu1的数据写入stu2里面
stu1

stu2

然后来到kattle的可视化界面,通过Spoon.bat进入(Windows环境)

分别在左侧的侧边栏中找到表输入和插入/更新,表输入用来从mysql数据库的表中获取数据,而插入/更新用来将获取到的数据插入到另一张表中。这里按照shift即可在两个控件之间画上一条带箭头的线,这样两个控件之间就建立了联系
这里右上角会有绿色的对号图标,是因为我已经成功运行了一遍

然后双击第一个表输入图标,编辑配置

这里需要配置的地方有两个,一个是数据库连接配置,一个是sql语句

数据库连接配置用来连接要使用的数据库
而sql语句用来选择从stu1表中获取哪些数据写入到stu2表中

然后再双击下一个控件,查看相关的配置信息

数据库连接会自动获取上一个控件 表输入 配置好的信息,而目标表需要自己选择,这里要写入到stu2
用来查询的关键字,用id在stu1表和stu2之间做一个连接,这里指定name和id都可以,但是如果指定age就会报错,因此stu2表中没有age字段,在查询时就会因为查询不到stu2表的age字段而报错
更新字段,用来决定对哪些字段进行更新

用job来完成表数据的写入以及更改


在start里面可以设置任务的定时
转换里面是之前保存的转换文件,即将stu1表里面的数据写入到stu2中

在sql里面编写要执行的sql语句脚本

重新建立数据库的连接,然后在脚本里面编写的sql语句,会在上一步的转换过程结束后执行
最终结果为

mysql到hbase


最开始是两个表输入控件,分别从mysql的student表和score表里面获取数据,使用的sql语句分别是
select * from student
select student_id,sum(score) from score group by student_id

对student表需要进行一下过滤,过滤出班级为理科的学生

在记录集连接控件之前,要对所有的表进行排序,这里就按照student的id字段,和score表的student_id字段进行排序

然后按照id和student_id进行两张表的连接

在字段选择控件中,可以对表连接后的全部字段进行选择,选择具体将哪些字段的值写入到hbase中

最后的Hbase output控件将两张mysql里面的表连接后的数据写入到hbase中,但是在这个控件里面同样需要配置许多东西

首先是配置hadoop集群


测试的时候,有着打勾的选项就够了,其余的不用配置

然后

然后在hbase中创建一张表,create ‘kettle_demo’,‘info’
来到mappings的选项页下面,配置一下hbase表的映射关系,点击左下角的Save mapping,将映射关系保存为Mapping1

然后再回到原先的选项页下面

保存退出后,点击运行

到hbase中查看一下

写入成功

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/653762.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号