我正在将一个表(200 万行)从 DB2 迁移到 SQL Server。我正在使用下一个流程:
问题是在 PutDataBaseRecord 完成所有记录的插入之前运行第二个 ExecuteSQL。
如何告诉 nifi 仅当另一个处理器完成时才运行该处理器?
提前致谢!
在 PutDatabaseRecord 之后,您可以在碎片整理模式下使用 MergeContent 来撤消 SplitAvro 执行的拆分操作。这样,仅当所有拆分都已看到时,单个流文件才会从 MergeContent 中出来,此时您知道第二个 ExecuteSQL 运行的时间。
@bryan-bende 提供的答案很棒,因为它简单而优雅。如果由于某种原因这不起作用,您还可以查看等待/通知。话虽如此,布莱恩的答案更简单,也可能更可靠。