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.变量

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

  

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

  

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

    

   更多参数和变量的介绍,参考:https://blog.csdn.net/yimenglin/article/details/84520601

 

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

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

 

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

 

posted @ 2018-05-06 21:02  ---江北  阅读(5176)  评论(0编辑  收藏  举报
TOP