【问题标题】:Talend MySQL flow keeps stopping at 11599 rowsTalend MySQL 流一直停止在 11599 行
【发布时间】:2020-05-29 07:53:30
【问题描述】:

我在 Talend Open Studio 中为数据集成创建了一份工作。它运行并做正确的事情,但当我运行它时,它一直停在 11599 行。我使用的唯一高级设置是启用流以减少内存使用。

【问题讨论】:

  • 您好,您可以发布您收到的错误消息吗?
  • 我没有收到任何错误。它只是停止加载,但看起来调试仍在运行。当我检查表的 COUNT(*) 时,表停止增长
  • 为什么要添加带有主行的提交?请尝试用 OnComponentOk 触发器替换 row2
  • 我使用了提交,因为没有行保存到目标数据库。如果我删除它,那么什么都不会发生。它仍然停留在 11599 行。我必须对 OnComponentOK 跳跳器做什么? dw 事实表是行尾
  • 当您打开数据库连接时,您可以从高级选项启用 AutoCommit。这样您就可以删除 Commit 组件,它应该可以正常工作。

标签: mysql talend data-integration


【解决方案1】:

当您使用 Commit 组件时,它会从源中获取所有记录并一起提交。一次提交了 11599 个条目,这降低了工作的性能。而是避免使用提交组件并在输出组件中使用高级设置并提供提交间隔。例如:如果您提供 1000 的提交间隔,它会将目标中的每 1000 条记录一起提交。

【讨论】:

  • 谢谢。但就像我上面所说的,问题来自 tMysqlInput,它总是在 11599 处停止。好奇怪……
  • 它实际上并没有停止,它正在后台提交数据库中的记录。数据根据您的延迟提交。请在输出组件中使用提交间隔,这将解决您的问题
  • 我试过了,它做了同样的事情。它最多提交 11000(以 1000 间隔),然后在 11599 的 tbinput 处停止。即使我输出到一个文件,它也会停在那里。这不是查询。因为如果我在 MySQL Workbench 中运行它,它会返回更多。
  • 您是在本地机器上还是从任何其他服务器上运行作业?
  • 在我的机器上处于调试模式
【解决方案2】:

啊,事实证明第 11600 行有问题(因此为什么它转到 11599 然后停止了)。仍然试图弄清楚是什么。

【讨论】:

  • 不使用调试模式执行作业会报错
  • 您不能作为答案帖子中的问题。请在问题布局中删除和编辑
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-31
  • 1970-01-01
  • 2023-03-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多