【问题标题】:Azure Data Factory foreach activity step size supportAzure 数据工厂 foreach 活动步长支持
【发布时间】:2019-08-09 10:48:41
【问题描述】:

我有一个包含 ID 列表作为输入的管道,我需要遍历这些 ID 并每次使用 10 个 ID 的批次调用 REST API(这些 ID 将作为参数传递到 JSON 请求中)。

1) 是否有任何方法使用数据工厂中的 forEach 活动来传递步长?

2) 对于如何完成此任务,您还有其他建议吗?

我尝试过使用“forEach”循环,也尝试过使用“setVariable”和“appendVariable”活动在循环期间存储当前索引,但也找不到在循环期间获取当前索引的方法“forEach”。

【问题讨论】:

    标签: azure azure-data-factory azure-data-factory-2


    【解决方案1】:

    您应该使用LookupActivity。有了它,您可以从数据库、文件或其他任何内容中获取信息,然后将其传递给 ForEach 循环。

    假设我的 txt 文件中有以下信息:

    name|age
    orochiBrabo|25
    NarutoBoy|98
    

    您可以使用LookupActivity 恢复它,我将其称为MyLookUp,然后将它与ForEach 框连接起来。

    ForEach 活动设置选项卡中,您编写@activity('MyLookUp').output.value,现在您可以遍历文件中的所有行。在您的 ForEach 中,您可以参考 item().ageitem().nameitem().myColumnName 等结果。

    【讨论】:

    • 我现在正好有这个结构。但是,我需要迭代内容一次获得 10 行/项目(步长 = 10),类似于编程语言迭代: for(i=0; idiegoca80.github.io)。
    • 如果你想同时处理 10 行你应该取消选择顺序选项并在 Foreach 设置选项卡中将 Batch Count 设置为 10。然后你在 foreach 中完成所有的处理工作。
    • 我猜将批处理计数设置为 10 将每次并行处理 10 个项目。我需要每次处理 10 个项目的组 - 每次调用都使用这 10 个项目调用一个 API。
    猜你喜欢
    • 2021-06-10
    • 2018-11-22
    • 2020-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    • 2022-01-04
    • 1970-01-01
    相关资源
    最近更新 更多