接kettle学习知识总结(一)
【注意事项】
1、 如果kettle 转化过程中,要将一张表中数据转化到另一张不同的数据结构表中,最好在进行“表输入”或者“插入/更新”前加入字段选择插件,通过字段选择中的“列映射”,将A表中同类型字段映射到B表中。
2、如果要在SQL语句中引用系统变量使用${xxx}形式,此外还要将“替换SQL语句中里的变量”复选框勾选上,这样在执行的过程中才能正确替换系统变量。
3、 如果在js脚本中系统自带函数不会使用,可以通过鼠标右键点击“Sample”产看函数实例。
4、在kettle开发过程中,尽量使用相对路径,而不是用绝对路径,并将路径参数设置到系统的变量中,这样即便后期对目录结构造成较大的改动,只会对kettle代码产生较小的影响。
5、如果相对已经设置好的表输出——Database field进行设置,首先要将“Specify database fields”复选框进行选中。才能修改。
6、 表输出中“剪裁表”复选框,作用相对先将表中原有内容全部清除,然后重新添加数据。
7、 如果想将日志输出到kettle日志控制台中,要使用utility中的“write to log”工具。否者将不能打印各个步骤执行过程中的步骤。
8、 对于“插入/更新”插件
如果不填写查询关键字参数,既可以实现插入操作
如果填写查询关键字插件,实现的根据查询条件更新数据(注:必须将“update”属性设置为“Y”)
9、 对于kettle中定时插件,在执行时会一直占用某个shell,只有当执行完成之后kettle的定时器才会退出。所以我们在项目中使用linux 定时插件Crontab。