1、kettle原生是支持for循环处理的,无需通过javascript脚本或者java脚本开发for循环控制。当然如果想通过脚本挑战下也是可以的。

本节课主要讲解如何通过kettle中的job来实现for循环控制,如下图所示:

1)步骤【设置变量】设置单个job级别的变量。

2)步骤【转换】加载数据集清单列表,返回一个dataList。

3)步骤【转换】处理当条数据,此步骤也是今天要讲解的重点步骤。

2、步骤【转换】处理当条数据,要想循环处理list中的每一条数据,一定要勾选“执行每一个输入行”,如下图所示:

3、步骤【设置变量】这一步根据业务场景可以选择是否添加,如果后面两个步骤都需要用到变量的话,可以添加设置变量。

4、加载数据清单子转换如下,通过自定义常量步骤生成两条数据,复制纪录到结果可以将结果传递到下个步骤。

5、单条处理子转换如下,通过自定义常量步骤生成两条数据,从结果获取纪录可以将上一步结果传递到当前步骤。

6、不通过job,单独通过转换也可以实现for循环控制,如下图所示:

7、转换和job中的单条处理设置大同小异,转换时设置Row grouping中的Number of rows to send transformation为1。

留个悬念:这个参数也会涉及到性能调优,大家可以尝试下,欢迎评论区讨论。

kettle从入门到精通 第六十课 ETL之kettle for循环处理每条数据,so easy!的更多相关文章

  1. Spring Boot从入门到精通(六)集成Redis实现缓存机制

    Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言 ...

  2. Hibernate从入门到精通(六)一对一双向关联映射

    在上次的博文Hibernate从入门到精通(五)一对一单向关联映射中我们讲解了一下一对一单向关联映射,这次我们继续讲解一下与之对应的一对一双向关联映射. 一对一双向关联 与一对一单向关联映射所不同的的 ...

  3. 学习C++从入门到精通的的十本最经典书籍

    原文:http://blog.csdn.net/a_302/article/details/17558369 最近想学C++,找了一下网上推荐的书籍,转载过来给大家分享 转载自http://c.chi ...

  4. Spark入门到精通--(第十节)环境搭建(ZooKeeper和kafka搭建)

    上一节搭建完了Hive,这一节我们来搭建ZooKeeper,主要是后面的kafka需要运行在上面. ZooKeeper下载和安装 下载ZooKeeper 3.4.5软件包,可以在百度网盘进行下载.链接 ...

  5. CoreData 从入门到精通(六)模型版本和数据迁移

    前面几篇文章中讲的所有内容,都是在同一个模型版本上进行操作的.但在真实开发中,基本上不会一直停留在一个版本上,因为需求是不断变化的,说不定什么时候就需要往模型里添加新的字段,添加新的模型,甚至是大规模 ...

  6. go语言20小时从入门到精通(六、工程管理)

    在实际的开发工作中,直接调用编译器进行编译和链接的场景是少而又少,因为在工程中不会简单到只有一个源代码文件,且源文件之间会有相互的依赖关系.如果这样一个文件一个文件逐步编译,那不亚于一场灾难. Go语 ...

  7. Simulink仿真入门到精通(六) Simulink模型保存为图片

    6.1 截图保存方式 Ctrl+Alt+A 6.2 拷贝试图方式 Edit→Copy Current View to Clipboard 6.3 saveas函数 用于保存figure或者simuli ...

  8. 【Python从入门到精通】(十)Python流程控制的关键字该怎么用呢?【收藏下来,常看常新】

    您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 这篇文章主要介绍Python中流程控制的关键字的使用,涉及到if else,for,while等关键字 干货满满,建议收藏,需要用到时常看看. 小 ...

  9. Docker从入门到精通(六)——容器通信

    想要变成 Docker 的高阶玩家,搞懂 Docker 的容器通信是必不可少的. 1.需求 通常一个 Web 项目上线,我们会把开发完成的服务部署在Tomcat 服务器里面,然后需要的持久化数据会存放 ...

  10. kettle从入门到精通 第十一课 kettle javascript 解析json数组

    1.json步骤虽然可以解析json数组,但是不够灵活.通过javascript步骤来解析json数组比较灵活,且可以按照需要组装数据流转到下个步骤. 1)步骤名称:可以自定义 2)Transform ...

随机推荐

  1. 力扣608(MySQL)-树节点(中等)

    题目: 给定一个表 tree,id 是树节点的编号, p_id 是它父节点的 id . 树中每个节点属于以下三种类型之一: 叶子:如果这个节点没有任何孩子节点.根:如果这个节点是整棵树的根,即没有父节 ...

  2. Apsara Stack 同行者专刊 | 怀同行之心,筑信任之基,践数智之行

    简介: 政企云平台处在怎样的历史阶段?数智创新的同行者们面临着怎样的挑战与机遇?在时代巨幕下,政企期待云厂商扮演怎样的角色?阿里云智能研究员.混合云平台总经理刘国华认为,云厂商不仅需要有定力与实力,也 ...

  3. SpringCloud 应用在 Kubernetes 上的最佳实践 —— 高可用(弹性伸缩)

    作者 | 三未 前言 弹性伸缩是一种为了满足业务需求.保证服务质量.平衡服务成本的重要应用管理策略.弹性伸缩让应用的部署规模能够根据实时的业务量产生动态调整,在业务高峰期扩大部署规模,保证服务不被业务 ...

  4. dotnet 5 的 bin 文件夹下的 ref 文件夹是做什么用的

    本文来和大家聊聊在 dotnet 5 和 dotnet 6 或更高版本的 dotnet 构建完成,在 bin 文件夹下,输出的 ref 文件夹.在此文件夹里面,将会包含项目程序集同名的 dll 文件, ...

  5. Etcd 可视化管理工具,GUI 客户端。

    Etcd Assistant--Etcd 可视化管理工具,GUI 客户端. 下载地址:http://www.redisant.cn/etcd 主要功能: 支持多标签页,同时连接到多个集群 以漂亮的格式 ...

  6. Cron Job 表达式解析

    Cron Job 表达式解析 Redisant Toolbox 是一款面向开发者的多合一工具箱,超过30种常用的开发工具:精心设计,快速.高效:离线使用,尊重您的隐私. 目录 Cron Job 表达式 ...

  7. vue通过input选取apk文件上传,显示进度条

    <template> <div class=""> <form action="" method="post" ...

  8. Flink Forward #Asia2020 流批一体及数仓资料整理

    阿里云实时计算负责人 - 王峰(莫问)/ FFA_2020-Flink as a Unified Engine - Now and Next-V4 2020年Flink 基于Flink 的流批一体数仓 ...

  9. 使用NSSM将.exe程序安装成windows服务

    1.下载NSSM:NSSM - the Non-Sucking Service Manager 2.cmd方式安装服务 将下载的压缩包解压,找到nssm.exe,以管理员身份打开cmd,在cmd中定位 ...

  10. centos 7 开启 httpd 服务和 80 端口

    centos 7 开启 httpd 服务和 80 端口 yum install -y httpd systemctl start httpd firewall-cmd --add-service=ht ...