kettle从入门到精通 第六十课 ETL之kettle for循环处理每条数据,so easy!
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!的更多相关文章
- Spring Boot从入门到精通(六)集成Redis实现缓存机制
Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言 ...
- Hibernate从入门到精通(六)一对一双向关联映射
在上次的博文Hibernate从入门到精通(五)一对一单向关联映射中我们讲解了一下一对一单向关联映射,这次我们继续讲解一下与之对应的一对一双向关联映射. 一对一双向关联 与一对一单向关联映射所不同的的 ...
- 学习C++从入门到精通的的十本最经典书籍
原文:http://blog.csdn.net/a_302/article/details/17558369 最近想学C++,找了一下网上推荐的书籍,转载过来给大家分享 转载自http://c.chi ...
- Spark入门到精通--(第十节)环境搭建(ZooKeeper和kafka搭建)
上一节搭建完了Hive,这一节我们来搭建ZooKeeper,主要是后面的kafka需要运行在上面. ZooKeeper下载和安装 下载ZooKeeper 3.4.5软件包,可以在百度网盘进行下载.链接 ...
- CoreData 从入门到精通(六)模型版本和数据迁移
前面几篇文章中讲的所有内容,都是在同一个模型版本上进行操作的.但在真实开发中,基本上不会一直停留在一个版本上,因为需求是不断变化的,说不定什么时候就需要往模型里添加新的字段,添加新的模型,甚至是大规模 ...
- go语言20小时从入门到精通(六、工程管理)
在实际的开发工作中,直接调用编译器进行编译和链接的场景是少而又少,因为在工程中不会简单到只有一个源代码文件,且源文件之间会有相互的依赖关系.如果这样一个文件一个文件逐步编译,那不亚于一场灾难. Go语 ...
- Simulink仿真入门到精通(六) Simulink模型保存为图片
6.1 截图保存方式 Ctrl+Alt+A 6.2 拷贝试图方式 Edit→Copy Current View to Clipboard 6.3 saveas函数 用于保存figure或者simuli ...
- 【Python从入门到精通】(十)Python流程控制的关键字该怎么用呢?【收藏下来,常看常新】
您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 这篇文章主要介绍Python中流程控制的关键字的使用,涉及到if else,for,while等关键字 干货满满,建议收藏,需要用到时常看看. 小 ...
- Docker从入门到精通(六)——容器通信
想要变成 Docker 的高阶玩家,搞懂 Docker 的容器通信是必不可少的. 1.需求 通常一个 Web 项目上线,我们会把开发完成的服务部署在Tomcat 服务器里面,然后需要的持久化数据会存放 ...
- kettle从入门到精通 第十一课 kettle javascript 解析json数组
1.json步骤虽然可以解析json数组,但是不够灵活.通过javascript步骤来解析json数组比较灵活,且可以按照需要组装数据流转到下个步骤. 1)步骤名称:可以自定义 2)Transform ...
随机推荐
- Snowflake核心技术解读系列——架构设计
简介:Snowflake取得了巨大的商业成功,技术是如何支撑起它的千亿美元市值呢?它技术强在哪?本文为大家倾情解读Snowflake的核心技术原理. 背景:2020年9月16日,Snowflake成 ...
- 阿里云何万青:南坡VS北坡,阿里云高性能计算行业实践
简介:北坡模式:借助于云上大计算性能突破来提供HPC服务,切入的重点更加聚焦于云服务. 随着数字化转型的深入,行业应用对算力提出更高要求.为满足不同行业灵活的业务形态与计算需求,以云计算技术为服务模 ...
- 【CDS技术揭秘系列 总篇】阿里云的云定义存储来了
简介: 全新发布的云定义存储 CDS 和传统的存储阵列.分布式存储.软件定义存储的区别在哪里?阿里云存储团队如何看待将来存储的发展趋势?本文邀请了 CDS 研发团队的核心技术负责人为大家揭开围绕着阿 ...
- 从技术到科学,中国AI向何处去?
简介: 如果从达特茅斯会议起算,AI已经走过65年历程,尤其是近些年深度学习兴起后,AI迎来了空前未有的繁荣.不过,最近两年中国AI热潮似乎有所回落,在理论突破和落地应用上都遇到了挑战,外界不乏批评 ...
- Ubuntu 20.04版本安装k8s控制节点与控制节点升级
一.环境配置 服务器配置:2核4G IP:192.168.10.23 主机名:master4将改主机加入此 集群 # 1.修改主机名 hostnamectl set-hostname master4 ...
- 实验1 在MAX10 FPGA上实现组合逻辑
实验1 在MAX10 FPGA上实现组合逻辑 实验前的准备工作:参照讲义步骤安装Quartus,Modelsim和System Builder.阅读材料:1)推荐的文件组织形式:2)Verilog 1 ...
- .NET开源、功能强大、跨平台的图表库 - LiveCharts2
前言 今天大姚给大家分享一个.NET开源(MIT License).功能强大.简单.灵活.跨平台的图表.地图和仪表库:LiveCharts2. 项目介绍 LiveCharts2是一个.NET开源. ...
- InternLM2 Demo实操-书生浦语大模型实战营第二期第2节作业&大语言模型3
大语言模型-3.InternLM2 Demo实操 书生浦语大模型实战营第二期第二节作业 本文包括第二期实战营的第2课作业的相关内容.本来是想在学习笔记中给InetrnLM官方教程做做补充的,没想到官方 ...
- NASM中的Preprocessor
NASM中的Preprocessor都以%开头. 单行macro %define %define与C语言中的#define类似: %define a(x) 1+b(x) %define b(x) 2* ...
- visualstudio着色器设计器shadergraph使用
第一次使用着色器设计器. vs的着色器设计器是hlsl的着色器设计器.不得不说里面节点得翻译是一坨屎. 附一个光线于法向量夹角渲染的设计图