azure - ADF 映射数据流因 BatchUpdateException 失败

标签 azure azure-blob-storage azure-data-factory azure-synapse

我有许多映射数据流在过去几个月中一直定期运行,其中一些从昨天开始出现故障。

数据流模式是 -

Source: 2 Azure SQL DB tables, a lookup table in Synapse

Sink: 1 table in Synapse (Azure SQL DB)

我们启用了 Polybase Staging 以获得更好的性能,因为如果没有它,每个事件都会花费很长时间,并且为此提供了到 Azure Blob 存储帐户的链接服务。

昨晚的一些较大表的运行中途失败,并出现以下错误,但较小的表全部成功。几个月内,这些管道或任何链接的服务都没有发生任何变化。

进入 Debug模式后,除非我在设置中禁用“暂存”选项,否则我无法查看任何 Synapse 接收器事件的数据预览。如果我尝试启用暂存,它会显示“应指定 Blob 存储暂存属性”,我已在调试设置中输入该属性,但仍然收到错误。

奇怪的是,这个问题只发生在移动大量数据的数据流上,较小的表在 Debug模式下也很好。所有这些数据流在 2 天前都是成功的,那么这可能是 Blob 存储中的空间问题吗?

管道事件错误代码:

{"StatusCode":"DFExecutorUserError",
"Message":"Job failed due to reason: at Sink 'SinkIntoSynapse': 
java.sql.BatchUpdateException: There are no batches in the input script.",
"Details":"at Sink 'SinkIntoSynapse': 
java.sql.BatchUpdateException: There are no batches in the input script."}

最佳答案

我发现这是由于接收器设置的预复制脚本部分中注释掉的 SQL 语句造成的。

如果“预复制脚本”部分中有任何内容,请尝试在再次发布和运行数据工厂之前将其删除。

关于azure - ADF 映射数据流因 BatchUpdateException 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64403769/

相关文章:

azure - Azure 数据工厂中的数据流与 foreach 循环集成

azure - 如何将参数从 Azure Automation Runbook 传递到 Azure Datafactory 管道

azure - Microsoft 的 Application Insights Azure ARM 模板中的 "Flow_type"属性是什么?

Azure DevOps 数据工厂数据集和管道 CI/CD 参数

sql-server - 从azure函数访问azure数据库

c# - Azure Function Blob 触发器重试计数

azure - 如何使用azure函数时间触发器获取所有blob存储(新的或更新的)

azure - Azure Blob 存储生命周期计算时间还是仅计算日期?

azure - 运行手动触发的管道时可能会导致 'InternalServerError executing request' 的原因是什么?

azure - 使用 Powershell 分配策略集(Azure Initiative)