我假装要扩展我的应用程序,过程的某些部分包括由一些处理客户端同时运行水壶作业,在某些方面,转换需要在某些共享表上执行组合查找(假设“ clients_table”),该表由于以下原因而迅速增长所有可能的客户端都是未知的,因此将其插入显示。在此表上同时执行作业的组合查找(比如说2,但每个客户端可能更多),由于我在插入不存在的客户端时出现“重复的输入键xxx”错误,因此存在并发问题(组合查找时)在表格中找不到要检索的ID)。事实是,每次处理客户执行水壶作业都会转移新客户,因此上述问题非常普遍。我想知道我是在打破水壶哲学还是错过了什么,我已经读过有关使水壶转换具有事务性的信息,这可能是我的解决方案,因为我认为正在执行的组合查找步骤不是事务性的吗?
给我一些想法。
PS:我正在使用Kettle 4.2和MySql 5.2
最佳答案
最后,我为水壶做了自己的事务组合查找插件(带有缓存管理),因为它使整个转换变得事务性昂贵。