kettle中转换和作业的执行顺序:
1、一个作业内的转换,是顺序执行的。 2、一个转换内的步骤是并行执行的。 3、作业内不支持事务,转换内支持事务。根据业务需要,通常需要在转换内顺序执行,小技巧如下: 1、执行SQL是优先于所有步骤。 2、使用“阻塞数据直到步骤都完成”,确保其他数据步骤都完成再进行下一步骤。事务: 1、设置转换只使用一个事务。转换设置–>夹项–>使用唯一连接。 2、设置转换内的表插入等数据库的操作不进行批量提交。”提交记录数量”–>0 https://www.cnblogs.com/kenwong/p/4630937.html excel 输出使用模版踩坑首先 kettle 有两个excel控件,“Excel输出 ” 和 “Microsoft Excel 输出”Excel输出 这个控件比较 简单,支持的功能也少,注意,使用模版时,貌似不支持 xlsx ,否则会报错,xls的模版必须是创建时就是xls格式的,不能是 xlsx 后缀修改的配置如下: 1、不输出头 使用模版中的2、编码 自行选择,3、工作表名称,必须和模版中一样,4、追加excel 模版,5、模版中有ABCD 4个标签页,如果第一个输出的是C的内容,会直接输出到A上,”Microsoft Excel 输出” 配置如下, 1、如果文件已存在,这个选项要好好理解,如果多个转换输出到一个excel的多个sheet页签中,选”使用现有文件输出”,2、工作表名要和模版中 你要输出的 sheet的页签的名字保持一致3、如果输出文件中已存在工作表,因为要使用模版,所以肯定要选择”输出至已存在的工作表中”4、使用模版创建新文件5、模版文件路径6、开始输出自单元格 即模版表头下一行最左测的单元格的位置7、输出表头,因为使用模版所以 这个不能勾选8、其他自行摸索 邮件发送多个附件:1、一共五个附件,三个收件人,其中一个收三个附件,附件是之前的转换生成的,名称加日期,每天一份,比如fuJian-2019-11-19.xls,fuJian-2019-11-18.xls,当天邮件只能发当天的附件,2、kettle的邮件空间里,选附件是可以选目录的,同时可以加通配符,问题在于 通配符 添加系统变量没有测试成功,日期是变量,输出excel 的目录有其他地区,其他日期的文件,所以发送三个附件那个邮件,要过滤地区及该地区的不同日期,3、通配符 添加系统变量没有测试成功,只能想其他解决方案, 3.1、在输出目录新建子目录,A 3.2、三个附件一起发的,三个附件都输出到A目录, 3.3、job里有删除多个文件的控件,每次job执行时,首先删掉A目录下的所有文件,然后该job的后续 转换会生成当天最新的附件excle文件,发送邮件时,发送A目录下所有的文件 3.4、避免过期的excle大量堆积 有个报错,记录下:…/kettle/data-integration/spoon.sh:行226: /opt/java/jdk1.8.0_171/bin//opt/java/jdk1.8.0_171/bin/java: 没有那个文件或目录 #淡定戒骄戒躁淡定#