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

kettle学习笔记(九)——子转换、集群与变量

一、概述

  kettle中3个重要的步骤:

    子转换/映射

      在转换里调用一个子转换,便于封装和重用。

    集群

      集群模式

    变量和参数

      变量和参数的用法

二、子转换

  1.定义子转换

    主要由映射输入与映射输出定义:

    

    这里给出一个从kettle自带的samples中拿出来的示例,详情配置,参考kettle示例

    

    保存这个转换(可以是文件,也可以在资源库),这就是子转换了!

  2.调用子转换

    

    子转换的配置:

    

    整个调用的示例如下:

    

    // 详细,查看kettle示例

三、集群

  Kettle 集群是一个分布式的运行环境,由一个主节点和多个子节点构成。

  主节点调度在子节点上处理不同的数据行,子节点把处理后的结果再提交到主节点。

  (本机模拟可以通过carte不同端口来模拟启动,然后在kettle的子服务器中配置,默认集群用户名cluster/cluster,然后在kettle集群中添加集群)

  使用的方式在步骤右击,选择集群进行配置

四、参数和变量

   1.参数

   参数分为位置参数(arg)和命名参数(param),变量则和之前介绍的一样。

  一个使用参数的示例如下:

  

  

  

  

  命名参数用法类似,之前也有介绍,使用age > ${arg1}

  如果使用命令行方式,则:

pan test.ktr 18

  // 如有空格,需要加双引号

  2.变量

  变量有作业下的设置变量和获取变量两种用法,分别对应将字段设置为字段和将变量设置为字段

  

  // 特别注意,设置的变量只能其它转换使用!!!

  

  使用的方式,类似如下:(作业中设置变量环节)

    

 

 

   kettle.properties中同样支持设置变量(注意重启spoon)

  并且,kettle.properties是支持密文的,这样就不用使用明文暴露密码了:

 

  命令行下执行
    encr -kettle 123
  命令
    得到 123 对应的密码是 2be98afc86aa7f2e4cb79ce10bec3fd89
  直接在 kettle.properties 文件里设置
    Password = Encrypted 2be98afc86aa7f2e4cb79ce10bec3fd89

转载于:https://www.cnblogs.com/lm970585581/p/9220506.html

相关文章:

  • Django初始配置及大概扫阅
  • [转载]Delphi 版 everything、光速搜索代码
  • OO第四次博客作业
  • CentOS7网卡重启错误,配置IP方案
  • 真·面试题
  • 英语基础语法-时态(谓语动词的变化-一般时态/进行时态)
  • 安装mysql时出现应用程序无法正常启动(0xc000007b)、初始化失败以及密码忘记怎样重置?...
  • Java多线程(六) —— 线程并发库之并发容器
  • NEO VM原理及其实现(转载)
  • ES6的函数
  • review02
  • 5.2.12.读写接口实践
  • JAVA进程CPU使用率使用过高故障排查
  • 基础面试题
  • C++ 构造函数_初始化列表
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • java8-模拟hadoop
  • JavaScript服务器推送技术之 WebSocket
  • maven工程打包jar以及java jar命令的classpath使用
  • miaov-React 最佳入门
  • Mocha测试初探
  • Selenium实战教程系列(二)---元素定位
  • VUE es6技巧写法(持续更新中~~~)
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 微信开源mars源码分析1—上层samples分析
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 《天龙八部3D》Unity技术方案揭秘
  • FaaS 的简单实践
  • Hibernate主键生成策略及选择
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • # .NET Framework中使用命名管道进行进程间通信
  • # 日期待t_最值得等的SUV奥迪Q9:空间比MPV还大,或搭4.0T,香
  • #android不同版本废弃api,新api。
  • $().each和$.each的区别
  • (06)金属布线——为半导体注入生命的连接
  • (13):Silverlight 2 数据与通信之WebRequest
  • (4)事件处理——(6)给.ready()回调函数传递一个参数(Passing an argument to the .ready() callback)...
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (三)c52学习之旅-点亮LED灯
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (转)【Hibernate总结系列】使用举例
  • (转)德国人的记事本
  • .gitignore文件_Git:.gitignore
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET 反射的使用
  • .NET 事件模型教程(二)
  • .Net8 Blazor 尝鲜
  • .NetCore部署微服务(二)
  • .net开发引用程序集提示没有强名称的解决办法
  • .NET框架
  • .Net中间语言BeforeFieldInit
  • @javax.ws.rs Webservice注解
  • @Tag和@Operation标签失效问题。SpringDoc 2.2.0(OpenApi 3)和Spring Boot 3.1.1集成
  • [2008][note]腔内级联拉曼发射的,二极管泵浦多频调Q laser——