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
1
作业存储在数据库
Kitchen.bat /rep kettle /user admin /pass admin /job F_DEP_COMP
1
(Rep的值为数据库资源库ID)
Linux 中参数以 –分隔
作业存储在文件
./kitchen.sh-file=/home/job/huimin.kjb >> /home/ log/kettle.log
1
作业存储在数据库
./kitchen.sh -rep=kettle1 -user=admin -pass=admin -level=Basic -job=job
kettle之linux使用kettle的更多相关文章
- Linux启动kettle及linux和windows中kettle往hdfs中写数据(3)
在xmanager中的xshell运行进入图形化界面 sh spoon.sh 新建一个job
- 关于linux安装kettle的总结
一.部署准备 1.1 JDK安装配置 命令行键入“cd /etc”进入etc目录 命令行键入“vi profile”打开profile文件 敲击键盘ctrl+F到文件末尾 在末尾处,即第一个~的地方, ...
- Kettle学习系列之kettle的下载、安装和初步使用(windows平台下)(图文详解)
不多说,直接上干货! kettle的下载 Kettle可以在http://kettle.pentaho.org/网站下载 http://sourceforge.n ...
- kettle系列-[KettleUtil]kettle插件,类似kettle的自定义java类控件
该kettle插件功能类似kettle现有的定义java类插件,自定java类插件主要是支持在kettle中直接编写java代码实现自定特殊功能,而本控件主要是将自定义代码转移到jar包,就是说自定义 ...
- Linux中kettle自动化部署脚本
自己写的一个自动化在Linux中部署kettle的脚本,包括一些遇到的问题在脚本中都有涉及. kettle是官网最新版本pdi-ce-6.1.0.1-196.zip 目前最新版本下载地址:https: ...
- Linux下面kettle的部署
一直以来服务器是linux系统,但是感觉linux图形化不强,于是从接触kettle以来都是在windows系统操作ETL的设计和处理.现在需要在linux中查看一下kettle资源库是否连接正常,以 ...
- linux上Kettle定时执行(转换的单步执行,job的单步执行,环境变量,kettle定时功能,效率问题等)转自(http://blog.csdn.net/feng19821209/article/details/5800960)
1,Kettle跨平台使用. 例如:在AIX下(AIX是IBM商用UNIX操作系统,此处在LINUX/UNIX同样适用),运行Kettle的相关步骤如下: 1)进入到Kettle部署的路径 ...
- kettle在linux安装
1 首先保证linux上面已经安装jdk,因为kettle是用Java开发,依赖于jdk 2 将pdi-ce-7.1.0.0-12.zip 上传到linux对应文件夹下面(笔者上传到/opt/kett ...
- kettle在linux下面用于shell脚本执行:转换或者作业
1 将windows下面创建好的转换,放到Linux某一个文件夹下面.如:把0816_em.ktr文件放到/home/cfj/kettle/testdemo下面. 注意里面的数据库用户名和密码可能需要 ...
随机推荐
- samba及其基本应用
Samba 137/udp,138/udp,139/tcp,445/tcp windowns主机共享: linux主机进行访问查看资源:smbclient -L Server_IP -U 用户名 li ...
- 转载(略有修改):Windows 8的承载网络设置方法(w8 创建无线网络/ap)
第一步.查看电脑是否支持网络共享 在命令提示符(打开方式看文章最后)中输入:netsh wlan show drivers,然后回车. 找到"支持的承载网络"一项,如果后面显示的是 ...
- Spring Boot :邮件服务
简单使用 1.pom 包配置 pom 包里面添加 spring-boot-starter-mail 包引用 <dependencies> <dependency> <gr ...
- with的上下文管理
1.with with语句是在Python2.6中出现的新语句.在Python2.6以前要正确的处理涉及到异常的资源管理时,需要使用try/finally代码结构.如要实现文件在操作出现异常时也能正确 ...
- 用工具metaseeker写简单爬虫(1)
1.下载metaseeker(一款比较实用的网站数据采集程序) 2.将所要爬取的网页复制到网址里,按回车.我选择的是当当网新书排行榜页面,标2的地方表示已经导入到软件里了. 3.命名主题,查重,查看是 ...
- For in + 定时器
Fon in for/in 语句用于循环对象属性. 循环中的代码每执行一次,就会对对数组的元素对象的属性进行一次操作. <p id = "demo"><p> ...
- 前端开发面试题总结之——JAVASCRIPT(三)
___________________________________________________________________________________ 相关知识点 数据类型.运算.对象 ...
- 【持续更新】JAVA面向对象多线程编程的一些tips
sleep()和wait()的区别 sleep()方法是Thread类的方法,wait()方法是Object类的方法. 调用sleep()方法的过程中,线程不会释放对象锁,睡眠时间一过,就又开始执行. ...
- 面试题:电梯/雨伞/杯子/笔/A4纸/纸杯… 怎么测试?
目的 面试的时候,面试官出题可能会出其不意: 比如随意指定生活当中的一件物品,问你如何测试,见下 作为测试人员,电梯/雨伞/杯子/笔/A4纸/纸杯… 怎么测试? 面试官的考察点 1.在没有需求文档或者 ...
- http/1.0/1.1/2.0与https的比较
HTTP是HyperText Transfer Protocol的缩写,译为超文本传输协议.是一种应用于OSI七层模型中应用层的协议,是我们平常互联网网络通信传输的基础.它的作用就是规定了服务器和客户 ...