如何在 Azure 数据工厂上对存储过程进行排序?

问题描述

我有一个带有 DateTime 参数的存储过程,我想执行管道序列,所以它将首先在 'JAN-FEB' 然后是 'MAR-APR' 然后是 'MEI-JUN '

我该怎么做?不使用存储过程中的硬管道?

对于这样的例子:

enter image description here

我有 3 个具有不同 DateTime 的存储过程。我不希望它像这样运行。

enter image description here

我该怎么做才能解决我的问题?在这种情况下,我可以使用 Azure 数据工厂中的哪些函数

注意:

  • 为什么我要对这个存储过程进行排序是为了防止 Azure Synapse 导致崩溃。因为在此脚本中将处理来自源表的大约 10 亿 行,我需要批处理此过程以防止出现任何错误

解决方法

  1. 首先,您可以在 ADF 中定义一个数组类型变量。例如。 ['JAN-FEB','MAR-APR','MEI-JUN']
    enter image description here

  2. 通过 Foreach 活动遍历这个数组。选择Sequential,这将顺序循环内部活动。添加动态内容,选择你声明的变量名。
    enter image description here

  3. 在 Foreach 活动中,我们可以使用存储过程,单击 Import 将在您的存储过程中导入参数。然后添加动态内容@item()enter image description here

ADF 将按顺序执行存储过程。