Kettle 的早期版本中的变量只有系统环境变量
目前版本中(31) 变量包括系统环境变量, "Kettle变量" 和内部变量三种系统环境变量的影响范围很广,凡是在一个 JVM下运行的线程都受其影响Kettle 变量限制了变量的作用范围, 变量范围包括三种分别是 grand-parent job, parent job, root job 内部变量: 是 kettle 内置的一些变量, 主要是kettle 运行时依赖的环境, 如转换文件名称, 转换路径,ip地址, kettle 版本号等等2 变量的设置
"系统环境变量" 有三种设置方式
1) 通过命令行 -D 参数
2) 属性文件 kettleproperty 中设置, 该属性文件位于 ${userhome}kettle 下
3) 通过设置环境变量步骤 (Set Variable) 设置"Kettle 变量" 只能通过设置环境变量 (Set Variable) 步骤设置,同时设置变量的作用范围
"内部变量" 是预置的无须设置3 变量的使用
无论哪种类型的变量在使用上都是一样的, 有两种方式
1) 通过 %%var%% 或 ${var} 来引用, 这个引用可以用在 SQL 语句中, 也可以用在允许变量输入的输入框里
2) 通过获取变量 (Get Variable) 步骤来使用命令行参数:
1 设置: 命令行参数通过获取系统信息(Get System Info) 步骤设置, 在使用时可以像列名一样来使用,不必像变量一样要通过 ${var} 这样的格式引用 用户最多可以设置10个命令行参数
2 传递: 命令行下使用 pan /file:xxxktr arg1 arg2 来传递参数图形界面下,每次运行时有要求输入参数的提示窗口使用kettle导出文件时我们不免会因为当前使用的kettle版本过低的原因,导致数据量较大的文件导出时报错,此下,解决方法1为升级kettle版本,若无升级的必要时可采用方法2,方法2如下图所示
本人测试结果:源表数据依次被加载到以下几张表格中,且导出的数据与源表数据完全相同,不存在多出和少入的情况需求:通过kettle *** 作clickhouse
背景:kettle官方不支持clickhouse的驱动
版本:
clickhouse 208715
kettle 81
实现步骤:
windows上环境:
1、将以下包放入 xxx\data-integration\libswt\win64
2、在kettle的plugins文件夹下创建clickhouse-plugins
3、将以下包文件放入上面创建的clickhouse-plugins目录下
4、重启kettle
5、kettle中 *** 作
以上方案在kettle中插入日期数据到clickhouse会报异常,处理方式如下
1、删除第一步中放入到win64下面的所有jar包
2、将下面包放入到kettle的lib下,重启即可
ps:由于平台上不能上传相关jar包,以上包有需要的可以联系我。
参考文章: >
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)