【问题标题】:Azure Data Factory grab file from folder based on sizeAzure 数据工厂根据大小从文件夹中抓取文件
【发布时间】:2021-01-16 10:12:23
【问题描述】:

我运行了一个复制活动,该活动使用 http 链接服务从在线提取 zip 文件,然后将 zip 解压缩到 Azure blob 存储容器中包含多个文件的文件夹。我现在要做的是从新创建的文件夹中动态提取最大的文件,并通过数据流转换运行它,同时通过 ADF 删除文件夹。我正在尝试使用输出文件夹子项的获取元数据活动。然后使用“@activity('Get Metadata1').output.childItems”将输出连接到 ForEach 活动。通过内部 GetMetadata 活动传入 ForEach 设置的 Items 以获取文件大小。但它在检索文件大小时出错,给了我这个..

{ “错误代码”:“3500”, “消息”:“字段'大小'失败并出现错误:'Type = Microsoft.WindowsAzure.Storage.StorageException,Message =远程服务器返回错误:(404)未找到。,Source = Microsoft.WindowsAzure.Storage,'' Type=System.Net.WebException,Message=远程服务器返回错误:(404) Not Found.,Source=System,'.", "failureType": "用户错误", "target": "获取元数据2", “细节”: [] }

是否无法获取文件夹子项的文件大小?我一直在关注这个文档。

https://social.msdn.microsoft.com/Forums/azure/en-US/a83712ef-9a1a-4741-80b5-0e2ee8288ef5/get-child-items-size?forum=AzureDataFactory&prof=required

【问题讨论】:

    标签: azure-data-factory azure-logic-apps azure-blob-storage


    【解决方案1】:
    1. 创建数据工厂
    2. 设置一个预定的触发器,或者如果您确切知道所有文件何时完成提取/加载,则以不同的方式触发它。
    3. 创建一个元数据活动,该活动将返回特定文件夹的元数据。
    4. 根据元数据从 blob 中获取最大的文件。

    【讨论】:

    • 但是当我对文件夹进行元数据活动时,它不会提供有关文件夹内文件大小的信息。我只能按名称拉它,我想按大小动态拉它,因为名称会改变。
    • 是的,您当然可以从元数据过滤器中获取大小
    • 我不能没有 ForEach 活动,我已经添加了它并调整了我的问题,因为我遇到了一个特定的错误
    猜你喜欢
    • 1970-01-01
    • 2021-01-01
    • 1970-01-01
    • 2023-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-24
    • 1970-01-01
    相关资源
    最近更新 更多