kettle参数、变量详细讲解

标签: kettle 参数 变量 | 发表时间:2014-10-18 01:17 | 作者:neweastsun
出处:http://blog.csdn.net

kettle参数、变量详细讲解

 

kettle 3.2 以前的版本里只有 variable 和 argument,kettle 3.2 中,又引入了 parameter 概念;variable 即environment variables(环境变量或全局变量),即使是不同的转换它们也拥有同样的值;而argument(位置参数)和parameter(命名参数),可以映射为局部变量,只针对一个特定的转换,比如像是限定结果集的大小和过滤条件。

1、     variable(变量)

variables 也可以认为叫做environment variables , 就像它的名字一样,主要是用来设定环境变量的,比如最常见的:文件的存放地址,smtp的配置等等,你也可以把它认为是编程语言里面的全局变量,即使是不同的转换它们也拥有同样的值;

变量可以用在转换或作业中,可以通过在转换中使用 Set Variable 步骤定义或在kettle.properties文件中定义,文件的路径默认如下:

$HOME/.kettle (Unix/Linux/OSX)

C:\Documents andSettings\<username>\.kettle\ (Windows)

C:\Users\<username>\.kettle\(Windows Vista)

 

1.1、kettle.properties文件中定义全局变量

      打开文件,直接在里面定义,如: TODAY=to_char(sysdate,'yyyy-mm-dd'),这里支持数据库函数,说的更直白点,就是这里定义是个啥,那么在transformation里边取到的它就是啥。在需要的地方,直接%%V_YES_DATE%%,或者${V_YES_DATE}就可以得到。需要提醒的是如果编辑中文,需要navationtoascii工具或在eclipse中编辑。定义后保存重启spoon才生效。

 

2、     garument(位置参数)

      kettle 3.2 以前的版本里只有 argument,也叫Positional arguments,就是最多能设置的 10 个命令行参数,通过在命令行参数的位置来区别

3、     parameter(命名参数)

在 kettle 3.2 中,又引入了 parameter 概念,可以通过名称来区别,并可以在命令行中通过/param:name=value 的方式设置设置参数, 另外/listparam 可以列出一个ktr 或 kjb 里定义的parameter。


命名参数可以在转换或作业的设置对话框中定义,定义时给定默认值;当在SPOON中运行作业或转换时,在运行对话框中输入命名参数的值。在命令行中运行时,也可以通过-param:name=value给每个命名参数赋值,param:name=value在命令行中一个整体块,视为命令的一个参数。

例:运行job.kjb文件,有两个参数files.dir=/opt/files 、max.date=2010-06-02

Linux: ./kitchen.sh-file:job.kjb -param:files.dir=/opt/files -param:max.date=2010-06-02
Windows: Kitchen.bat -file:job.kjb “-param:files.dir=/opt/files”“-param:max.date=2010-06-02″

命名参数可作为变量,在运行时命名参数并映射为变量。如果你定义了命名参数为foo,你可以在任何地方引用通过${foo}.

作者:neweastsun 发表于2014-10-17 17:17:56 原文链接
阅读:90 评论:0 查看评论

相关 [kettle 参数 变量] 推荐:

kettle参数、变量详细讲解

- - CSDN博客数据库推荐文章
kettle参数、变量详细讲解. 1、     variable(变量). variables 也可以认为叫做environment variables , 就像它的名字一样,主要是用来设定环境变量的,比如最常见的:文件的存放地址,smtp的配置等等,你也可以把它认为是编程语言里面的全局变量,即使是不同的转换它们也拥有同样的值;.

Kettle环境变量在ETL工程上的应用

- - 行业应用 - ITeye博客
    好久没更新博文,最近临近离职,事情少了,有空停下来总结总结这段时间的东西.     今天先记录下Kettle环境变量的应用.     一个好的环境变量的使用,在业务变更或者环境变动后,只需要很少工作量的修改即可完成. 我们把变量分成系统环境变量和业务变量,系统环境变量是指那些在ETL中指定的系统级资源配置,如数据库信息、日志文件路径等等,这些变量一旦设定,不会经常变动;业务变量指跟当前ETL执行处理的内容有关,如日期、产品ID等等,跟运行时有关.

Kettle 创建 Transformation

- - CSDN博客推荐文章
1.第一步,先准备数据和工具. 安装好mysql以及客户端工具.   `status` int(11) NOT NULL COMMENT '对内= 1 ,对外= 2',. 以上我们建了四个表,客户customer,账户account,交易记录trade,交易明细表trade_detail. 用下面的sql查询一下得到每个客户下每个账户的交易明细.

kettle执行job

- - 互联网 - ITeye博客
ETL高级教程kettle. 1,Kettle跨平台使用.     例如:在AIX下(AIX是IBM商用UNIX操作系统,此处在LINUX/UNIX同样适用),运行Kettle的相关步骤如下:.     1)进入到Kettle部署的路径.     2)执行 chmod *.sh,将所有shell文件添加可执行权限.

kettle 开发总结

- - CSDN博客推荐文章
2.在用file exists 控件的时候,当用到“文本文件输入”时,文本文件中需要一定的格式,类似下图:. ;当然也可以已经创建了相应的表,然后直接按“确定”按钮就行,如果相应的表和输入的列数及列属性不一样时,也可以在sql按钮的语句中取修改. 在使用file exists时,输入也可以用表输入.

Kettle运行日志记录

- - 开源软件 - ITeye博客
原创文章,转载请注明出处:http://qq85609655.iteye.com/blog/2173882. 在kettle.properties中,可以定义参数. 来全局设置,记录kettle的job和trans日志,. 记录日志,会进行锁表,在kettle作业非常多的情况下,容易造成表锁,以及队列等待job日志记录的情况严重影响效率.

基于spring-boot的kettle调度 - 简书

- -
大家好,我是帅气小伙,由于最近公司项目辗转大数据,需要做数据抽取的工作,kettle是目前比较成熟的ETL工具,而传统的kettle客户端在任务调度这方面没有实现,于是在网上寻找开源的kettle调度项目. 专门为kettle这款优秀的ETL工具开发的web端管理工具. 貌似源码跑起来比较费劲,各种缺包,于是我为大家专门整理了一下这个项目.

利用kettle组件导入excel文件到数据库

- - CSDN博客数据库推荐文章
利用kettle组件导入excel文件到数据库.        把excel文件内容导入到目标表中;然后用java调用kettle的转换. excel文件的内容只有两列,示例如下:.        数据库表的结构如下:. 使用oracle函数解决上图黄色行的字段:两个uuid和两个系统日期;. 需要生成uuid,这个在oracle中可以利用SYS_UUID()函数实现;.

ETL工具Pentaho Kettle的transformation和job集成

- - CSDN博客推荐文章
Kettle是一款国外开源的etl工具,纯java编写,数据抽取高效稳定(数据迁移工具). Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制. 2.1.       transformation实现解析.

kettle 命令行运行作业和转换

- - 编程语言 - ITeye博客
Kettle 命令行使用说明. 1.Kitchen——作业执行器. 是一个作业执行引擎,用来执行作业. 这是一个命令行执行工具, 参数说明如下. 1) -rep:Repositoryname 任务包所在存储名. 2) -user:Repositoryusername 执行人. 3) -pass:Repositorypassword 执行人密码.