kettle中含有参数传递的定时任务

1需求描述

使用Linux中的CRONTAB调度kettle

2 数据库环境

DROP TABLE DB2INST1.TEST_1;

CREATE TABLE DB2INST1.TEST_1

    (

    ID   INTEGER,

    NAME VARCHAR (10),

    DATE VARCHAR(10)

    )

    IN USERSPACE1;

INSERT INTO TEST_1 VALUES (‘1‘,‘sds‘,‘20160909‘);

INSERT INTO TEST_1 VALUES (‘2‘,‘sds‘,‘20160910‘);

INSERT INTO TEST_1 VALUES (‘3‘,‘sds‘,‘20160907‘);

INSERT INTO TEST_1 VALUES (‘4‘,‘sds‘,‘20160908‘);

DROP TABLE DB2INST1.TEST_2

CREATE TABLE DB2INST1.TEST_2

    (

    ID   INTEGER,

    NAME VARCHAR (10),

    DATE VARCHAR(10)

    )

    IN USERSPACE1;

  

3 整体示意图

3.1 ETL.kjb

3.2 Tran.ktr

3.3 调度示意图

使用Linux调度kjb,使用kjb调度ktr

4 参数设置

首先在ETL.kjb中定义参数

右键---作业设置

接着看到如下界面:设置作业中的命令参数

作业中的命令参数设置好了,那么接下来就是把作业中的命令参数传递给转换

接着打开Tran.ktr,定义转换参数(定义的名字与作业中定义的转换参数保持一致)

接着在表输入中获取参数

  

整个从作业到转换参数传递结束

5 Linux自动调度作业设置

新建ETL.sh文件,内容如下

/home/kettle/soft/data-integration/kitchen.sh -file=/home/kettle/job/ETL.kjb -param:date=20160909 > /home/kettle/20160909.txt 

5.1   CRONTAB命令

查看当前用户的定时任务

[[email protected] sh]$ crontab –l

编辑当前用户的定时任务

[[email protected] sh]$ crontab –e 

编辑当前用户的定时任务

[[email protected] sh]$ crontab –r

摘自:http://www.cnblogs.com/peida/archive/2013/01/08/2850483.html

实例:

每五分钟执行  */5 * * * *

每小时执行     0 * * * *

每天执行    0 0 * * *

每周执行    0 0 * * 0

每月执行    0 0 1 * *

每年执行    0 0 1 1 *

Linux中CRONTAB设置

输入CRONTAB -e,回车查看信息

按i进入编辑模式,输入一下内容后保存

赋予ETL.sh可执行权限

一分钟后查看数据库,结果如下:

时间: 2024-10-11 17:30:20

kettle中含有参数传递的定时任务的相关文章

判断给定十进制整数的二进制形式中含有几个1

两种判断一个给定整数的二进制形式中含有几个1的简单方法: 主要思想是通过按位与(&)运算和位移运算(<< >>)实现 1 unsigned int_number( int n) 2 { 3 if (n < 0) 4 return; 5 unsigned count = 0; 6 while (n != 0) 7 { 8 if ((n & 1) != 0) 9 ++count; 10 n >>= 1; 11 } 12 return count; 13

kettle中denormalizer(列转行)的使用

需要列转行的数据分为两种:有主键和无主键,先说无主键的 转以前的内容 转以后的内容 看到了吧,转过来了,好来张整体流程图 开始分析: 第一个图标打开后为 这是第一步里面主要的一步,这里配置好了就可以进行第二步了. 因为没有主键,所以要给城市那一列添加一个相同的主键,这样数据在转成行的时候就可以转到同一行了,如果主键不同,转成行后,每一个主键为一行,这不是我们想要的. 打开列转行的界面为 图中的dummy是我们前一步添加的常量,关键字段选择城市,关键字段值就为城市的value,数据字段为人数的ke

做肉酱的猪肉中含有丰富的蛋白质及脂肪

炸酱面是一种汉族面食,如今流行于北京.天津,辽宁.吉林等北方地区,做法也根据地区与习惯的不同而有所不同,但炸酱面讲究肉酱美味与蔬菜搭配,蔬菜从豆芽.豆苗.黄瓜.胡萝卜等蔬菜到青豆.黄豆等豆类食品不等,还可根据自己颈腰椎疾病的口味选择海鲜.肉类等配料. 从营养价值来说,做肉酱的猪肉中含有丰富的蛋白质及脂肪.碳水化合物.钙.磷.铁等成分,是最常见.最平价的肉类食品之一:而用面粉制作的面条,含有碳水化合物及少量B族维生素,是提供人体能量的“主力军”,有心灵手巧的人家还会自己往面粉中加入甘蓝汁.青菜汁.

kettle中调用java类

有时需要在kettle调用java类,如:验证.查询或自定义加密等.有时甚至连基本的数据访问都不那么简单,如获取一个存储文件或使用一个数据库连接,某些数据源可能封装在应用程序中,手工使用自定义的java客户端访问是唯一的方法.本文介绍如何在kettle中调用java类.示例代码在这里下载. 注:如果你使用kettle4.0及以上版本,也你也可以使用user defined java class 步骤实现.   Modified Java ScriptValue 步骤 关键要在kettle中使用M

[ACM] hdu 3555 Bomb (数位DP,统计1-N中含有“49”的总数)

Bomb Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others) Total Submission(s): 7187 Accepted Submission(s): 2512 Problem Description The counter-terrorists found a time bomb in the dust. But this time the terrorists impro

kettle中使用JavaScript的一个例子

最近在使用kettle的时候遇到一个问题,需要对输入的一个字段进行格式化,逻辑比较复杂(需要做替换掉指定的字符串,然后将数字部分不足四位的数前边补0等操作),kettle中没有提供直接的插件来支持复杂的业务逻辑处理,所以就自己写代码来处理. kettle中可以支持Java代码和JavaScript代码,java代码我尝试了几次,不是太稳定,所以就使用了JavaScript 1.在左侧选择脚本中的 JavaScript代码 2.上个步骤传过来的字段 都在Input fields中,在JavaScr

spring中quatz的多定时任务配置图文详解

近来公司让用quatz框架做定时功能,而且还是执行多定时任务,真是苦恼. 虽然从网上搜了很多资料,但是写法上不太尽如人意,最后还是请教了螃蟹大神,给的配置建议就是简单啊,现在拿来分享下: 这里我们需要的有两部分,一个是java中的处理类,一个是quatz的配置文件,截图如下applicationContext_quartz.xmlquatz的配置文件地址地址:http://www.itxxz.com/a/kuangjia/kuangjiashili/2014/0602/10.html java中

[Android学习笔记]ListView中含有Button导致无法响应onItemClick回调的解决办法

转自:http://www.cnblogs.com/eyu8874521/archive/2012/10/17/2727882.html 问题描述: 当ListView的Item中的控件只是一些展示类控件时(比如TextView),注册ListView的监听setOnItemClickListener之后,当点击Item时候会触发onItemClick回调. 但是,当Item中存在Button(继承于Button)的控件时,onItemClick回调不会被触发. 解决方案: 在Item的布局文件

list中含有map的排序问题

Map的种类 在Java中,Map的主要作用是存储键值对.由于是根据键得到值,所以不允许键重复.它主要有如下几个类别: HashMap: 最常用的Map,它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快的访问速度,遍历时,取得数据的顺序是完全随机的.HashMap最多只允许一条记录的键为Null;允许多条记录的值为Null;HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap;可能会导致数据的不一致.如果需要同步,可以用Collections的sy