【问题标题】:Pentaho Data Integration SQL Server Table Output step Performance IssuesPentaho 数据集成 SQL Server 表输出步骤性能问题
【发布时间】:2020-06-04 22:12:42
【问题描述】:

我有一个针对这个问题的示例转换设置:

表格输入步骤 -> 表格输出步骤。

在运行转换并查看实时统计数据时,我看到:

表格输出步骤每秒加载约 11 行,这非常慢。我在“表输出”步骤中的提交大小设置为 1000。SQL 输入返回 40k 行,并在自行运行而不指向表输出时在 10 秒内返回。输入和输出表位于同一个数据库中。

系统信息: pdi 8.0.0.0 视窗 10 SQL Server 2017

【问题讨论】:

    标签: sql-server pentaho-spoon pentaho-data-integration


    【解决方案1】:

    表格输出通常很慢。

    如果我没有完全弄错的话,它会为每一行插入,这需要很多时间。

    一种更快的方法是使用“批量加载”,它使用“LOAD DATA INFILE 'FIFO File' INTO TABLE ....”将数据从 Kettle 内部流式传输到命名管道。

    您可以在此处阅读有关批量加载工作原理的更多信息:https://dev.mysql.com/doc/refman/8.0/en/load-data.html

    无论如何:如果您在同一个数据库中从一个表输入到另一个表,那么我会创建一个“执行 SQL 脚本”步骤并使用单个查询进行更新。

    如果您查看这篇文章,您可以了解有关在单个 SQL 查询中从另一个表更新表的更多信息: SQL update from one Table to another based on a ID match

    【讨论】:

      猜你喜欢
      • 2023-03-11
      • 1970-01-01
      • 2015-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-09
      相关资源
      最近更新 更多