Azure 数据工厂从元数据复制事件新的上次修改列

标签 azure azure-data-factory

我正在使用 ADF Copy Activity 将许多文件复制到一个文件中,但我想添加一列并获取元数据上 Blob 的上次修改日期,例如 $$FILEPATH。
enter image description here

enter image description here

有没有一种简单的方法可以做到这一点,因为我只看到与管道详细信息等相关的系统变量。

https://learn.microsoft.com/en-us/azure/data-factory/control-flow-system-variables

最佳答案

  • 由于要求是向每个文件添加一列,其中该列值是该 blob 的 lastModified 日期,因此我们可以迭代每个文件,向其中添加具有当前 blob 的 lastModified 日期,将其复制到暂存文件夹中。

  • 在此暂存文件夹中,您可以使用最终复制事件将此文件夹中的所有文件合并到最终目标文件夹中的单个文件。

  • 看下面的演示。以下是我在 ADLS 存储中的文件。

enter image description here

  • 我使用获取元数据来获取此容器中的文件名称(final 和 output1 文件夹是在稍后阶段创建的,因此它们不会影响该过程)。

enter image description here

  • foreach 事件中使用返回文件名作为项目 (@activity('Get Metadata1').output.childItems),我获得了 lastModified 每个文件使用每个文件中的另一个获取元数据事件。

enter image description here

  • Get Metadata2的数据集配置如下:

/image/6bErm.png

  • 现在,我已通过添加附加列将这些文件复制到 output1 文件夹中,我在其中提供了以下动态内容(来自 getmetadata2 的 lastModified)
@activity('Get Metadata2').output.lastModified

enter image description here

  • 现在,您可以在此 foreach 之后使用最终复制数据事件,将这些文件合并为单个文件并放入 final 文件夹中。

enter image description here

  • 以下是最终输出供引用:

enter image description here

关于Azure 数据工厂从元数据复制事件新的上次修改列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74036104/

相关文章:

javascript - k8s从node js应用程序读取 secret

在 ADF 管道中找不到 Azure Batch 链接服务

azure - Azure 能否触发本地脚本按计划运行?

c# - 将 ASP.NET Core 2.1 和 Angular 6 项目发布到 Azure

azure - B2B 场景中跨不同订阅的托管身份?

Azure 数据工厂 - 如何处理来自 Microsoft graph REST 源的 CSV 数据

azure - 如何在 Azure 数据工厂中创建审核表,该表将保存 Azure 数据工厂中运行的管道的状态

azure - 即使通过专用终结点设置连接后,Azure 数据工厂仍然可以通过 Internet 进行访问吗?

azure - 我可以在 azure 函数中使用重试策略吗?

sql-server - Azure SQL 查询速度慢