gpt4 book ai didi

pentaho - 回滚后继续Pentaho变换

转载 作者:行者123 更新时间:2023-12-02 12:23:41 25 4
gpt4 key购买 nike

使用 Kettle-Spoon 5.1,我有一个转换:

  1. 从数据库(oracle)中提取一行
  2. 将行发送到 REST api(通过 REST客户)
  3. 使用 Switch/Case 步骤来查看结果。如果结果良好,我从数据库中删除该记录(执行 SQL),否则,我回滚事务

请注意,回滚取决于结果,不一定是错误/异常。 如果特定事务回滚,我仍然想继续处理其他行(不希望转换停止)。

两个问题:

  1. 有没有一种干净的方法来强制回滚? (目前我有一个带有“抛出”的 JavaScript 步骤
  2. 回滚后如何强制事务继续?

最佳答案

在一个转换中,Pentaho 在同一个事务中同时处理流中的行。要回滚单行,您需要为每一行创建一个单独的事务,而 Pentaho 不支持这一点。

我建议使用另一种方法来达到相同的效果。两种可能性:

  1. 在收到 REST 结果之前不要更改数据库。这样,就没有什么可以回滚的了。当然,您可以将更改暂存在内存中(在流字段中)或临时数据库表中,这样您就可以准确地知道它们会是什么。
  2. 以某种方式跟踪您所做的数据库更改,以便在 REST 结果表明您应该撤消这些更改时可以撤消它们。根据您的操作方式,您可以跟踪流字段或临时数据库表中的这些更改。

关于pentaho - 回滚后继续Pentaho变换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35752645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com