簡體   English   中英

如何使用 ADF 復制活動隔離 blob 存儲中的文件

[英]how to segregate files in a blob storage using ADF copy activity

我在 ADF 中有一個復制數據活動,我想根據文件類型將文件隔離到不同的容器中。

前任。 容器 A -.jpeg、.png 容器 B -.csv、.xml 和 .doc

我最初的想法是使用“if condition”和“or”語句,但看起來我的方法行不通。 如果您能提供一些意見,我將不勝感激。

在此處輸入圖像描述

您應該使用GetMetadata活動首先獲取需要首先傳遞給復制到容器 A 的CopyData活動的所有文件類型,然后添加下一個 Getmetadata 活動以獲取復制到容器 B 的下一個 copydata 活動的文件類型。所以,您的 ADF 管道可能類似於 GetMetaData1 -> Copydata1 -> GetMetaData2 -> Copydata2。 請參閱本文中的如何使用 GetMetaData 活動和文檔

復制活動本身允許多個wildcard path ,因此您可以在數據源中使用它,請參閱this

首先,從源容器中獲取列表文件並在Foreach活動中循環每個文件以使用If condition檢查擴展名,並根據條件將文件復制到各自的容器中。

我的源容器中有以下文件。

在此處輸入圖像描述

在 ADF 中:

  1. 使用Get metadata活動,從源容器中獲取所有文件的列表。

在此處輸入圖像描述

  1. 獲取元數據活動的 Output

在此處輸入圖像描述

  1. 將 output 列表傳遞給Foreach活動。

@activity('Get Metadata1').output.childitems

在此處輸入圖像描述

  1. Foreach活動中,添加If Condition活動以根據擴展名分隔文件。

@or(contains(item().name, '.xml'),contains(item().name, '.csv'))

在此處輸入圖像描述

  1. 如果條件為,則將當前文件復制到container1

在此處輸入圖像描述

在此處輸入圖像描述

  1. 如果條件返回false ,則將當前文件復制到 False 活動中的container2

在此處輸入圖像描述

在此處輸入圖像描述

運行管道后容器中的文件。

容器1:

在此處輸入圖像描述

容器2:

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM