首页 > 其他分享 >3.kettle使用

3.kettle使用

时间:2023-03-13 15:58:31浏览次数:35  
标签:log kettle sh job 文件夹 使用 执行

Kettle遇到的问题 Kettle基础

  1. kettle有两种保存方式:一种是资源库方式(数据库),一种是文件格式(XML)
  2. kettle有两种类型Transformation和Job,Transformation完成针对数据的基础转换,Job则完成整个工作流的控制
3.kettle跨平台使用 a)         在linux下,运行kettle的相关步骤如下: 1.进入到kettle部署的路径 2.执行chmod.sh,将所有shell文件添加可执行权限 3.在kettle路径下,如果要执行transformation,就运行./pan.sh -file=?.ktr -debug=debug -log=log.log,其中,-file说明你要运行transformation文件所在的路        径,-debug说明日志输出的级别,-log说明日志输出的路径 4.同理,对于job的执行,请将./span.sh更换成./kitchen.sh,其他不变 2.kettle环境变量的使用 a)      在transformation中,core objects——>job——>set variable,可以设置环境变量,   对于绝对路径和相对路径转换有帮助 3.kettle定时功能          在job下的start模块下,有一个定时功能,可以每日,每周等方式进行定时,对    于     周期性的ETL很有帮助 a)         使用资源库登录时(repository)登录时,默认的用户名和密码是admin/admin b)         当job是存放在资源库(一般资源库都使用数据库)中时,使用kitchen.sh执行job  时,需使用如下命令行: Kitchen.sh/rep kettlr/user admin /pass admin /job job名   c)         当job没有存放在资源库中而存在文件系统中时,使用kitchen.bat执行job时,需   使用如下命令行: Kitchen.sh/norep /file user-transfer-job.kjb d)         可以使用命令行执行job后,就可以使用windows或者linux的任务调度来定时执     行任务了 4.kettle部署 a)         在linux下某目录下创建一个文件夹,将从官网上下载的kettle(我的是pdi -ce-5.1.0.0-752.zip)解压后放到该文件夹下 b)      在解压的路径下找到kitchen.sh所在的路径,进入该目录,通过chmod+x *.sh赋予.sh      文件执行权限 c)      输入命令./kitchen.sh,如果出现帮助信息说明部署成功 5.shell脚本执行kettle job或者转换 以执行一个转换为例: a)         我的kettle位置:/home/kettle Kitchen.sh(用来执行job)和pan.sh(用来执行转换)等都在data-integration下面 b)         Transtion下面有一个实现文件转移的job和两个文件夹:源文件夹和目标文件夹,           执行job的shell脚本也放在此文件夹下: Startup.sh的内容: /home/kettle/data-integration/kitchen.sh-file=/home/kettle/transtion/move.kjb                log=log.log c)      进入startup.sh在的路径: cd /home/kettle/trantion D)     输入命令: ./startup.sh即可执行move.kjb 6.kettle环境变量配置及配置文件 很多人会忽视kettle的环境变量配置,因为不配置它,在linux下一样可以执行kettle的job和转换,然而,配置环境变量,尤其是使用配置文件是非常有好处的,比如上面的那个job,在通过spoon图形化界面设置这个job时,源文件夹路径和目标文件夹路径我都定死了:这样的坏处是很明显的:如果在别的linux服务器上执行这个job,别人又不知道你的设定的源文件夹路径和目标文件夹路径等变量,显然是不能执行的,这个job也没多大意义(假如你使用了kettle做了很大的数据处理工程,里面的文件路径,数据库连接URL,及用户名和密码都设定死了,比人在他的linux下无法使用) 这时,就需要设置kettle的配置文件: a) 配置kettle环境变量,最简单的方法,只要执行命令KETTLE_HOME=路径就可以了 export KETTLE_HOME=/root 输入:echo ${KETTLE_HOME}.看到/root,且在这个路径下输入:|| -la,会看到.kettle  文件夹,说明配置成功 b) 配置kettle.properties文件 进入.kettle文件夹,会看到kettle.properties文件,只要在里面配置需要的变量,在想要的地方通过${}就能取得变量的值,这样就实现了动态配置kettle job或者转换相关的参数 7.后台执行job或转换(适合定时执行job) ./home/kettle/data-integration/kitchen.sh -file=/home/kettle/trantion/move.kjb log=log.log &(“&”就是这个符号)  

标签:log,kettle,sh,job,文件夹,使用,执行
From: https://www.cnblogs.com/zhangdapangzo/p/17211694.html

相关文章