kettle之linux使用kettle

Kettle可以在Window、Linux、Unix上运行,数据抽取高效稳定,使用之前需要准备环境。
准备java环境,这里就不赘述了,建议jdk7以上版本。

上传kettle压缩包,并解压,我解压的路径是/usr/soft/kettle

以下是重点:
确保kettle脚本可执行权限
使用命令查看文件权限

ls -l /data-integration

如图:

如果没有执行权限,执行以下命令:

chmod +x /usr/soft/kettle/dist/*.sh

使用命令测试是否部署成功

./dist/kitchen.sh

部署成功后的截图:

常用命令
ktr的运行:运行transformation文件是通过pan.sh来运行的。

打开cmd命令行窗口,转到pan.sh所在的目录,如/home/zzq/data-integration,然后执行文件的命令为

./pan.sh -file=/home/zzq/work/test.ktr
  1. 如果要输出日志则
./pan.sh -file=/home/zzq/work/test.ktr >> /home/zzq/log/kettle.log
  1. 后台模式运行使用
./pan.sh -file=/home/zzq/work/genotypeHiveLinux.ktr >> /home/zzq/log/kettle.log &
  1. kjb的运行

运行job文件是通过kitchen.sh来运行的。

打开cmd命令行窗口,转到kitchen.sh所在的目录,如/home/zzq/data-integration,然后执行文件的命令为

./kitchen.sh -file=/home/zzq/work/test.kjb
  1. 如果要输出日志则
./kitchen.sh -file=/home/zzq/work/test.kjb >> /home/zzq/log/kettle.log
  1. 配置参数:

Pan——转换执行器
用来执行转换。参数与Kitchen类似,如下。

1- -version显示版本信息

2- -file=filename运行xml文件

3- -param:key=value指定命名参数

4- -log=logging filename 设置日志文件

5- -level=logging level 设置日志级别
Error:只显示错误

Nothing:不显示任何输出

Minimal:只使用最少的记录

Basic:这是默认的基本日志记录级别

Detailed:详细的日志输出

Debug:以调试为目的,非常详细的输出

Rowlevel:使用行级记录,会产生大量的数据

返回状态,Pan会基于执行状况返回一个错误码:
0:转换执行成功
1:处理过程中发生错误
2:在装载或者运行时发生意外的错误
3:不能初始化转换
7:转换不能从资源库或xml中装载
8:装载步骤或插件错误(通常是装载其中一个插件错误)
9:命令行用法错误

Kitchen——作业执行器
用来执行作业。这是一个命令行执行工具,参数说明如下。

1) -rep:Repositoryname任务包所在存储名

2) -user:Repositoryusername执行人

3) -pass:Repositorypassword执行人密码

4) -job:Thenameofthejobtolaunch任务包名称

5) -dir:Thedirectory(don’tforgettheleading/or)

6) -file:Thefilename(JobXML)tolaunch

7) -level:Thelogginglevel(Basic,Detailed,Debug,Rowlevel,Error,Nothing)指定日志级别

8) -log:Theloggingfiletowriteto指定日志文件

9) -listdir:Listthedirectoriesintherepository列出指定存储中的目录结构。

10) -listjobs:Listthejobsinthespecifieddirectory列出指定目录下的所有任务

11) -listrep:Listthedefinedrepositories列出所有的存储

12) -norep:Don’tlogintotherepository不写日志

示例: 1. Windows 中多个参数以 / 分隔,key 和value之间以:分隔

作业存储在文件

Kitchen.bat /level:Basic>D:\etl.log /file:F:\Kettledemo\email.kjb

作业存储在数据库

Kitchen.bat /rep kettle /user admin /pass admin /job F_DEP_COMP

(Rep的值为数据库资源库ID)

Linux 中参数以 –分隔

作业存储在文件

./kitchen.sh-file=/home/job/huimin.kjb >> /home/ log/kettle.log

作业存储在数据库

./kitchen.sh -rep=kettle1 -user=admin -pass=admin -level=Basic -job=job
  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值