当前位置: 首页 > news >正文

kettle从入门到精通 第118课 ETL之kettle,kettle job串行、job并行、 job依赖使用教程

场景:

上周群里探讨了kettle的job依赖问题(kettle DAG),可谓是热闹非凡,今天抽时间一起整理和探讨下。比如有三个job,分别是jobA1、jobA2、jobB,要实现jobA1和jobA2并行执行,然后等jobA1和jobA2执行结束之后在执行jobB。废话少说,开干。

e8406d86-1a5b-4d7e-a5d9-c1933d2339c7

1、 方案1

1)整体最外穿是一个大的job

2)作业A1、作业A2、作业B是三个子job

ba723734-3914-4906-9dcb-2ad13dfb1245

 3)作业A1、作业A2、作业B 子job设计

aeebcd27-8af7-4539-9933-8f192db42e94

 4)转换A1设计

91a4b62c-e61f-4a6c-87ac-9d7491c1f78e

 5)执行测试

从打印的日志可以清楚的看到实际执行路径有两条

a、作业A1-》作业B

b、作业A2-》作业B

而且作业A1和A2是同步执行的,有先后顺序,先执行了a路径,然后执行了b路径

7cdecea1-447b-4b60-9d53-fd4098542aa5

 

 

 

38a5e5b5-d3bd-4a1c-9a49-a75e34cf91a2

 6)作业度量

从作业度量信息来看,更清晰地看到执行的路径,可以清楚地看到最后的成功步骤也执行了2次。

4b32b95c-7ebb-4c96-a576-09e9cf44906c

 2、方案2

1)将jobA1和jobA2调整为并行job,右键Start步骤,选择Run Next Entries In Parallel,下图中的两条斜线代表并行执行。

截屏2026-03-09 21.24.29

 2)执行测试

从下面的作业度量来看,作业A1和A2同时执行,作业B依然执行了两次。

71d0d3a5-17c8-4bb3-b073-239d17a9afef

3、方案3

1)将子jobA1和jobA2使用一个jobA包裹下。

a82c3740-1072-47f7-934e-0c3c2a672a7e

 

2)jobA和jobB串行。

0358c252-2493-409c-9f28-4f5f935af7d8

3)执行测试

从作业度量可以清楚的看到作业A(A1+A2)和作业B都是只执行了一次,先执行作业A(A1+A2),然后再执行作业B。

作业A(A1+A2)中的子作业A和子作业B并行执行,且都执行了一次。

8ae0c3fa-f876-4622-8892-cf762bbd6c17

 写在最后

纸上得来终觉浅,绝知此事要躬行。当我们遇到一个问题时,可以群里和各位老师互相探讨,但是如果仅仅停留在探讨阶段,进步还是比较慢的。动手做,理论结合实践,这样进步才更快,加油宝子们。

image

 

http://www.jsqmd.com/news/464218/

相关文章:

  • ZYNQ实战:PCF8563 RTC模块的5个常见问题及解决方法
  • DeepSeek + ReAct 实战:构建智能生活助手 Agent
  • Linux进程管理实战详解
  • 基于YOLOv8-pose的实时手部关键点检测:从算法优化到多场景实战
  • 分布式事务中的空回滚与悬挂:原理、场景与解决方案
  • 解密Android14 QS面板事件传递链:从Tile点击到系统服务的完整流程剖析
  • Mozz TCAD丨LDMOS仿真优化与RESURF技术解析
  • IntelliJ IDEA 2021.3.3版本破解插件ja-netfilter-all的安装与激活指南
  • STM32无源蜂鸣器音乐盒:用PWM实现《小星星》完整曲谱(HAL库版)
  • RAG-03查询与检索模块
  • RAG-04响应与生成模块
  • 工业物联网实战:用Python+RS485温湿度传感器搭建环境监测系统
  • Python自动化实战:微信小程序每日签到脚本开发指南
  • Java PTA实战:面向对象设计中的Shape继承与多态应用
  • 五种高效工具对比:Shp 数据导入 PostGIS 的最佳实践指南
  • 反激式电源设计避坑指南:从MATLAB仿真看PID参数对输出电压稳定的影响
  • FastAPI + Uvicorn 实战:5分钟搭建高性能异步API(含性能优化技巧)
  • TVS二极管在高速信号保护中的关键参数与选型策略
  • 深入解析APB总线:从读写时序到高效验证实践
  • 深入解析I2S总线协议:数字音频接口的核心技术
  • NVIDIA校招笔试通关秘籍:Board Design Engineer必考的5大电路题型解析
  • UE5 Break Hit Result节点详解:从基础到高级用法(含避坑指南)
  • Zotero7必装插件:better-notes自定义学术笔记模板全攻略(附代码)
  • [阵列信号处理]近场DOA估计算法-2DMUSIC方法实战:从理论推导到MATLAB仿真
  • 车间巡检不踩坑!2026设备巡检APP口碑排行榜
  • 计算机毕业设计springboot基于springboot的社会公益平台 基于Spring Boot的志愿服务与公益资源管理系统 Spring Boot框架下的爱心捐赠与社区互助平台
  • DETR vs 传统目标检测:为什么Transformer正在改变游戏规则?
  • 微前端qiankun中子应用字体图标加载失败的深度解析与解决方案
  • C#与PLC通讯浮点数处理全攻略:ModbusTCP下的字节转换实战(含NModbus示例)
  • C++二维数组实战:5种常见矩阵操作保姆级教程(附完整代码)