【发布时间】:2022-02-17 14:35:56
【问题描述】:
我正在尝试运行一个管道,该管道将数据从 Cosmos (SQL API) 复制到 ADLS gen2 以用于多个表。 Lookup Activity 正在传递查询列表,Copy Activity 使用自托管 IR 在 ForEach 内运行。 但是它在第一次迭代后一直失败,并出现以下错误:
对目标副本 data1_copy1 的操作失败:“接收器”端发生故障。 ErrorCode=UserErrorFailedFileOperation,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=在路径 tfs/OU Cosmos Data/LATAM/fact\dl-br-prod.上传文件失败,Source=Microsoft.DataTransfer.Common,' 'Type=Microsoft.Azure.Documents.RequestTimeoutException,Message=请求超时。
此外,我确信这不是任何一个特定表的问题,因为我尝试以不同的顺序传递查询,在每次尝试中,第一个通过的查询成功完成,并且对于其余的迭代,复制活动运行一段时间并最终失败。
到目前为止,我已经尝试过以下操作:
- 以顺序模式运行 ForEach
- 将接收端的块大小(MB)更改为 20MB。默认为 100MB
【问题讨论】:
-
你找到解决办法了吗?
-
@KarthikBhyresh-MT 到目前为止,Microsoft 支持建议的最佳替代方案是改用 Synapse Link。但它也有其自身的局限性,因为我们需要使用自托管 IR。
-
@KarthikBhyresh-MT 参考我的最新答案以获得结论性发现
标签: azure azure-cosmosdb azure-data-factory azure-synapse azure-data-lake-gen2