如何重试和 ADF 流水线执行直到满足条件
How to re-try and ADF pipeline execution until conditions are met
ADF 流水线需要每天执行一次,比如说在 03:00 上午。
但是在执行之前我们还需要检查数据源是否可用。
数据由外部代理提供,它会定期将相应的数据加载到每个源中table,并在该过程完成时使用标志通知我们-table:如果数据源 1准备好将标志设置为 1。
我找不到使用 ADF 实现此逻辑的方法。
我们需要一些东西,例如,在 03.00 h 会触发一个 'element' 检查标志,如果标志没有启动,则不要启动管道。过去,比方说,10 分钟,再次检查标志,并且这样最多 X 次或直到标志升起。
如果标志已启动,启动管道执行并停止尝试进一步启动管道。
你会怎么做?
逻辑本身并不复杂,但我不知道在哪里实现它。我应该开发一个启动管道的 Azure Funtions 还是有办法使用开箱即用的 AZDF activity?
有一个 UNTIL 迭代 activity,您可以在其中检查您的条款。
示例:
- 您的 azure 函数 (AF) 检查标志和 returns 0 或 1。
- 使用 UNTIL activity 构建 ADF 管道,您可以在其中检查 AF 的输出(如果它的 1 执行某些操作)。在 UNTIL activity 中,您可以进行流程步骤。例如,您有一个变量标志,直到 activity 为 0。在您检查它是否为 1 之前。如果是,则执行您的处理步骤,如果不是,请将 WAIT activity 放在 10分钟左右。
因此,您可以在 ADF 中进行迭代,直到出现不满意的结果。
希望这对您有所帮助:)
ADF 流水线需要每天执行一次,比如说在 03:00 上午。
但是在执行之前我们还需要检查数据源是否可用。
数据由外部代理提供,它会定期将相应的数据加载到每个源中table,并在该过程完成时使用标志通知我们-table:如果数据源 1准备好将标志设置为 1。
我找不到使用 ADF 实现此逻辑的方法。
我们需要一些东西,例如,在 03.00 h 会触发一个 'element' 检查标志,如果标志没有启动,则不要启动管道。过去,比方说,10 分钟,再次检查标志,并且这样最多 X 次或直到标志升起。
如果标志已启动,启动管道执行并停止尝试进一步启动管道。
你会怎么做?
逻辑本身并不复杂,但我不知道在哪里实现它。我应该开发一个启动管道的 Azure Funtions 还是有办法使用开箱即用的 AZDF activity?
有一个 UNTIL 迭代 activity,您可以在其中检查您的条款。 示例:
- 您的 azure 函数 (AF) 检查标志和 returns 0 或 1。
- 使用 UNTIL activity 构建 ADF 管道,您可以在其中检查 AF 的输出(如果它的 1 执行某些操作)。在 UNTIL activity 中,您可以进行流程步骤。例如,您有一个变量标志,直到 activity 为 0。在您检查它是否为 1 之前。如果是,则执行您的处理步骤,如果不是,请将 WAIT activity 放在 10分钟左右。
因此,您可以在 ADF 中进行迭代,直到出现不满意的结果。 希望这对您有所帮助:)