【问题标题】:Transactions in Azure Data Factory & SSISAzure 数据工厂和 SSIS 中的事务
【发布时间】:2021-05-18 10:04:31
【问题描述】:

我有一个解决方案,其中SSIS 包部署在Azure 上。包正在通过Data Factory (V2) 使用Execute SSIS Package 任务在pipeline 中执行。

我在包中有一个sequence container,我想在其中启用事务(容器内的所有子组件都成功,否则回滚)。

我将事务选项更改为Required,但是在触发pipeline 后,我收到了这个错误(来自 SSIS 日志):

错误:MyPackage 中的 0xC001402C:SSIS 运行时未能在分布式事务中登记 OLE DB 连接,错误为 0x80070057“参数不正确。”。

错误:MyPackage 中的 0xC0202009:SSIS 错误代码 DTS_E_OLEDBERROR。发生 OLE DB 错误。 错误代码:0x80070057。 错误:MyDataFlow 中的 0xC020801C,缺少代码 [69]:SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。对连接管理器“我的连接”的 AcquireConnection 方法调用失败,错误代码为 0xC0202009。在此之前可能会发布错误消息,其中包含有关 AcquireConnection 方法调用失败原因的更多信息。

错误:MyDataFlow 中的 0xC004701A,SSIS.Pipeline:缺失代码未能通过预执行阶段并返回错误代码 0xC020801C。

SSIS 包或Data Factory (V2) 端是否有我遗漏的配置?

(我的Azure SQL Database 是标准部署,具有General Purpose 服务层)

【问题讨论】:

    标签: azure ssis azure-data-factory-2


    【解决方案1】:

    我看到你也在微软问答中发布了这个,@MartinJaffer-MSFT 回答了这个问题。复制到这里方便参考:

    我们查看了我们的记录,发现其他人在哪里获得了 类似的错误。他们试图迁移集成流程 从本地到云端。

    SQL PaaS 与支持分布式事务的方式不同 本地部署。

    为了利用 Azure SQL PaaS(根据您当前的架构),您 需要开发一个自定义 C# OR .Net 应用程序来处理 工作流程: https://docs.microsoft.com/en-us/azure/azure-sql/database/elastic-transactions-overview#installation-and-migration

    为了利用 SQL 托管实例,您需要使用 SQL Trust 预览版中的群组: https://docs.microsoft.com/en-us/azure/azure-sql/database/elastic-transactions-overview#transactions-across-multiple-servers-for-azure-sql-managed-instance SQL MI 和 SQL DB 都有分布式事务的限制: https://docs.microsoft.com/en-us/azure/azure-sql/database/elastic-transactions-overview#limitations

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-10-28
      • 2020-04-14
      • 2019-11-15
      • 2020-03-09
      • 2019-07-19
      • 2021-05-24
      • 2019-01-10
      相关资源
      最近更新 更多