为了账号安全,请及时绑定邮箱和手机立即绑定

Kettle基本概念

标签:
大数据

一.Kettle设计模块

1.转换

       转换是ETL解决方案中最主要的部分,它处理抽取、转换、加载各阶段各种对数据行的操作。转换包括一个或多个步骤(step),如读取文件、过滤输出行、数据清洗或将数据加载到数据库。
       转换里的步骤通过跳(hop)来连接,跳定义了一个单向通道,允许数据从一个步骤向另一个步骤流动。

步骤

       步骤是转换里的基本组成部分。

转换的跳

       跳是步骤之间带箭头的连线,其定义了步骤之间的数据通路。其实际上是两个步骤之间的被称为行集(row set)的数据行缓存(其大小可以在转换的设置里定义)。

并行

       跳的这种基于行集缓存的规则允许每个步骤都由一个独立的线程运行,这样并发程度最高。
       不可能定义一个执行顺序,因为所有步骤都以并发方式执行:当转换启动后,所有步骤同时启动,从它们的输入跳中读取数据,并把处理过的数据写到输出跳。
       如果想要一个任务沿着指定顺序执行,需要用到“作业”。

数据行

       数据以数据行的形式沿着步骤移动。一个数据行是零到多个字段的集合。

数据转换

       既可以显式地转换数据类型,如在“字段选择”步骤中直接选择要转换的数据类型,也可以隐式地转换数据类型,如将数值类型数据写入数据库中的varchar类型字段。

2.作业

       一个作业包括一个或多个作业项,其间按照某种顺序来执行。作业执行顺序由作业项之间的跳(job hop)和每个作业项的执行结果来决定。如下图:


webp

image.png

多路径和回溯

       Kettle使用回溯算法来执行作业里的所有作业项:假设执行到了图里一条路径的某个节点时,要依次执行这个节点的所有子路径,直到没有再可以执行的子路径,就返回该节点的上一节点,反复这个过程。



作者:阿猫阿狗Hakuna
链接:https://www.jianshu.com/p/e13e0b01dc81

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
46
获赞与收藏
145

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消