gpt4 book ai didi

azure - 删除 adf 中特定文件夹的文件夹

转载 作者:行者123 更新时间:2023-12-03 06:17:24 25 4
gpt4 key购买 nike

我有以下一组事件(见下图),它删除超过 5 天的文件夹。我的路径看起来像青铜/D365/Snapshot/salestable/"todaydate"/*.parquet。下面的管道从 salestable 文件夹中删除文件夹。

enter image description here

在获取元数据事件中,我有以下设置: enter image description here

其中folder_path仅指向(硬编码)SalesTable。

我的目标是使其动态化并传递所有表名称,因为我在那里只有 salestable。

我厌倦了 ForEach 循环下的整个管道,以及在每个循环之前的另一个 Getmetada 事件,它给出了所有表名称。像这样:

enter image description here

我的问题是我不知道如何传递 ForEach 事件中 Getmetadata_Of_ALL 的值以获取元数据事件数据集。因此数据集文件路径将变得动态

最佳答案

  • 您可以使用 bronze/D365/Snapshot/ 路径上的获取元数据,就像使用字段列表作为子项 来获取此路径内的文件夹列表(因为您有多个文件夹以及 salesTable)。

  • 以下是相同的演示。我的文件夹结构为 data/a/b,其中有 3 个文件夹(例如 salesTable,其中有今天的日期文件夹)。我对这些使用了 get Metadata 并得到了如下所示的结果:

enter image description here

  • 现在遍历每个文件夹。在每个内部,使用另一个带有数据集 JSON 的获取元数据事件,如下所示:
{
"name": "csv2",
"properties": {
"linkedServiceName": {
"referenceName": "adls1",
"type": "LinkedServiceReference"
},
"parameters": {
"folder_name": {
"type": "string"
}
},
"annotations": [],
"type": "DelimitedText",
"typeProperties": {
"location": {
"type": "AzureBlobFSLocation",
"folderPath": {
"value": "a/b/@{dataset().folder_name}",
"type": "Expression"
},
"fileSystem": "data"
},
"columnDelimiter": ",",
"escapeChar": "\\",
"quoteChar": "\""
},
"schema": []
}
}
  • 从获取元数据事件中以 @item().name 形式传递folder_name 参数的值。

enter image description here

  • 这将提供第一个获取元数据事件中返回的每个文件夹的内容,可供进一步使用。

enter image description here

关于azure - 删除 adf 中特定文件夹的文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76108719/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com