【问题标题】:How to include blob metadata in copy data mapping如何在复制数据映射中包含 blob 元数据
【发布时间】:2019-06-20 08:18:02
【问题描述】:

我正在开发 ADF v2 管道,它将数据从 csv blob 复制到 Azure SQL 数据库表。对于每次加载,我想收集源元数据,例如源 blob 名称,并将其作为数据沿袭框架的一部分保存到目标表中。

我的 blob 源运行以下架构:

  1. 商店名称,
  2. 商店位置,
  3. StoreTaxId.

我的目标表运行以下架构:

  1. 商店名称,
  2. 商店位置,
  3. DwhProcessDate,
  4. DwhSourceName。

我不知道,如何在复制数据活动的映射部分正确包含源名称。

目前我有:

  1. 定义了一个 [Get Metadata1] 活动以获取对 Azure Blob 存储中可用的所有 Blob 的引用
  2. 定义了一个 [ForEach1] 活动,遍历表达式 @activity('Get Metadata1').output.childitems 的输出
  3. 在 [ForEach1] 活动中,我放置了 [Copy Data1] 活动,其中定义了源和接收器部分。

我正在寻找一种向映射部分添加额外行的方法,这将与 @item().name 绑定到目标列 [DwhSourceName] 的方式相同

感谢所有关于如何实现这一点的建议。

【问题讨论】:

  • 那么,我的回答对你有帮助吗?

标签: azure azure-data-factory


【解决方案1】:

实际上,根据我的测试,您可以指定列键的动态内容,但不能在管道运行时将 blob 元数据设置为复制数据映射中的列值。请参阅此document 中提到的规则。

在复制活动之前,您仍然需要在源数据中添加 FileName 列。也许您可以使用 Azure Blob Trigger Function 来获取 blob 文件名,这样您就可以在任何数据流入时添加 FileName 列blob.(请参考本案例:How Do I get the Name of The inputBlob That Triggered My Azure Function With Python)

【讨论】:

    猜你喜欢
    • 2020-07-03
    • 1970-01-01
    • 1970-01-01
    • 2020-01-12
    • 2011-07-03
    • 1970-01-01
    • 2013-05-11
    • 1970-01-01
    • 2021-05-04
    相关资源
    最近更新 更多