【问题标题】:Azure Data Factory Until loop slow to end/terminateAzure 数据工厂 Until 循环结束/终止缓慢
【发布时间】:2023-01-18 12:18:20
【问题描述】:
我们在 ADFv2 管道中有一个 until loop。
一旦满足表达式条件,停止/终止所需的时间似乎与 until loop 完成其活动所需的时间长度相关。
这个特定的until loop 执行很多活动,可能需要 90-120 分钟才能完成。所以结束/终止(跳出循环)几乎需要同样长的时间。
如果我“破解”它以便它只执行少数活动,它会很快结束并在完成并满足终止表达式后中断。
它就像一个纺车,即使在电源关闭后仍会继续旋转。连接时建立起来的势头需要一段时间才能减慢并最终停止。
这是一个已知问题吗,我如何在此处排查确切原因或修复它?
【问题讨论】:
标签:
performance
azure-data-factory-2
until-loop
【解决方案1】:
不正确的使用嵌套循环开关可能会导致这个。
这里有一个直到组件,以及它之后的一些活动:
Until
在里面直到, 一些活动,
正确的:
In until - correct
不正确(缓慢结束/终止):
In until - incorrect
为什么?
对于不正确的情况,最后一个活动如果等待取决于三个活动,也许它的行为是违反直觉的。
// pay attention to "dependsOn"
{
"name": "If waiting",
"type": "IfCondition",
"dependsOn": [
{
"activity": "Set loop_waiting_refresh_status to True",
"dependencyConditions": [
"Succeeded"
]
},
{
"activity": "WeChatEP_Notifier Info Get new bearer",
"dependencyConditions": [
"Succeeded"
]
},
{
"activity": "Set loop_waiting_refresh_status to False",
"dependencyConditions": [
"Succeeded"
]
}
],
...
}