近来有项目中遇到Kettle事务处理和转换内步骤顺序执行的问题。为此进行了研究,找到了一个解决办法。

在Kettle中,一个Job内的转换,缺省是顺序执行的;一个转换内的步骤,缺省是并行执行的。但是,社区版不支持job内的事务处理,只支持转换内的事务。因此,如果要做顺序操作,且支持事务,需要如下处理:

  1. 根据业务需要,使用“阻塞数据直到步骤都完成”在转换内设置顺序执行的内容;
  2. 设置转换只使用一个事务。转换设置–>杂项–>使用唯一连接。
  3. 设置转换内的表插入等数据库操作不进行批量提交。“提交记录数量” –> 0

下面是我做的一个测试例子,已经测试通过,可以参考。

关于Kettle的事务和转换内步骤的顺序执行

Author: galaxy

Created: 2015-06-11 Thu 16:49

Emacs 24.4.1 (Org mode 8.2.10)

Validate

 

相关文章:

  • 2021-10-25
  • 2021-11-21
  • 2022-12-23
  • 2022-12-23
  • 2021-06-10
  • 2021-06-01
  • 2021-12-15
  • 2022-12-23
猜你喜欢
  • 2021-10-26
  • 2021-10-12
  • 2022-12-23
  • 2021-07-30
  • 2021-12-22
  • 2022-02-23
相关资源
相似解决方案