当我在Kettle上运行包含表输入的转换时,如果我访问数据库的进程列表,我会看到多个进程与表输入步骤的MySQL一起运行。
所以我的问题是,是水壶用线程来运行这个步骤,还是别的什么东西?
发布于 2018-09-29 10:11:53
水壶是数据流编程语言。这意味着转换的每个步骤都在自己的线程上运行,独立于其他线程。
每个线程等待来自输入步骤的数据,处理它们并在输出步骤上传递它们。数据被分组为大约1000行,以优化速度。
这种同时处理所有步骤的灵活性有许多优点,并解释了一些其他奇怪的行为,例如执行历史表(底部)中的步骤数通常是1000的倍数,以及自动锁定问题:当您在输出表中输入一个表并截断表时,Kettle进入一个自动锁,每个步骤等待另一个步骤完成。
https://stackoverflow.com/questions/52561205
复制相似问题