【问题标题】:PDI slow loading into azure databasesPDI 缓慢加载到 Azure 数据库中
【发布时间】:2019-02-21 11:52:50
【问题描述】:

我有一个安装了 Pentaho 数据集成的 Azure VM,我正在尝试构建一些从暂存区域加载维度模型的 ETL,但是当我开始转换时,PDI 到任何 azure 数据库的加载速度都很痛苦慢。

是否可以让 PDI 使用 Azure 数据库在云上工作?是否需要一些配置步骤才能达到合理的加载速度?

PS:

  • VM 和数据库在同一个区域
  • 防火墙规则允许端口访问
  • 阅读速度还不错
  • PDI 8.1,使用表格输出步骤

【问题讨论】:

  • 您可以检查 PDI 是否使用批量插入。如果由于某种原因没有,则每次插入都是到 Azure 数据库的往返。由于这种连接通常会出现延迟,您会看到性能很差。选择很快,因为它们不会单独处理行。 wiki.pentaho.com/display/EAI/Table+Output
  • 我对 Dirk Trilsbeek 的评论没有什么要补充的。请将azure-storageazure-sql-database 添加到您的标签中。事实上,我是为你做的,因为你只允许 5 个标签,所以我删除了 ETL 和 Kettle 作为多余的。
  • 您是否使用最新的 SQL Server JDBC 驱动程序?请更新。
  • 你确定它真的被使用了吗?选中表格输出步骤中的复选框并不意味着它处于活动状态,它只是意味着 PDI 将尽可能尝试使用批量插入。数据库确实必须支持批量插入。您可以尝试通过记录来捕获插入以查看发生了什么。如果使用批量插入,您可以尝试在输出步骤中增加您的提交。
  • @Codek 代表SQL Server JDBC driver,我使用的是 pdi 8.1

标签: azure azure-sql-database azure-storage pentaho-data-integration pdi


【解决方案1】:

我也遇到过同样的速度问题,但我会告诉你我的解决方法。

首先: 下载并安装最新的 jdbc 驱动程序,让您获得与 azure sql 数据库的连接,文档中的链接是 here,但我的做法是从这里保持同步GitHub 任何这些都可以让你在 PDI 中使用最新的驱动程序。

第二种解决方法:对于大文件,我发现最强大的是使用与 PowerShell 或 Linux Batch 集成的 BCP Utility。不在乎它的文件是本地文件还是天蓝色 blob 存储中的文件,但您可能需要为此提供凭据。

最后但并非最不重要的一点: 使用Azure Data Factory V2 移动和加载文件(如果你像我一样,我会尝试将它保存在 PDI 中,直到我必须加载它,http get步骤 将让您触发 ADF 管道)。

祝你好运,如果你得到它,请告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-24
    相关资源
    最近更新 更多