在 Azure 数据工厂中获取元数据没有成功给我多个 excel 文件

Posted

技术标签:

【中文标题】在 Azure 数据工厂中获取元数据没有成功给我多个 excel 文件【英文标题】:Get Meta data in Azure Data Factory is not giving me my multiple excel files successfully 【发布时间】:2021-03-25 11:52:26 【问题描述】:

我正在尝试在 ADF 中处理多个 excel 文件,以便在将数据活动复制到 blob 存储时利用它们。这是我的层次结构的结构:

我的来源是来自 SFTP 服务器(链接服务)的 Excel 表格。 文件路径:包含多个 .xlsx 文件的未命名文件夹。在这些文件中,工作表名称在 sheet1 和 table1 之间变化。

我正在尝试创建获取元数据以获取所有这些文件以将它们传递到复制活动中,但我的元数据从未成功

下面附上对该问题的详细说明:

【问题讨论】:

您似乎从文件中获得了Child Items,这会导致您的错误。 Child Items 只能用于获取给定文件夹中的子文件夹和文件列表。我不确定您为什么使用获取元数据活动?你想从中得到什么? @SteveZhao 但如果我不指定字段列表,则会引发Field List in Metadata Can not be empty 警告。我正在尝试获取列表中的所有文件以将其传递给每个活动并将这些文件中的每一个复制到 blob 存储。 【参考方案1】:

如果您只想将所有 excel 文件从 SFTP 复制到 Blob 存储,则无需使用 Get Metadata 活动。

请尝试这样:

1.创建二进制格式数据集

2.复制数据时选择通配符文件路径

3.sink 到您的 Blob 存储。

【讨论】:

非常感谢,成功了!但我使用 Get metadata Activity 的原因是我想要: 1. 将我的文件复制到 Blob 存储 2. 获取所有这些文件的 Last Modified Date 以更新我的 SQL DB 中的表。 如果是这样,您需要在获取元数据活动而不是“子项”的字段列表中选择“上次修改”。(确保您的获取元数据活动的数据集是文件而不是文件夹)

以上是关于在 Azure 数据工厂中获取元数据没有成功给我多个 excel 文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Azure 数据工厂的 DataFlow 中获取管道的元数据?想要创建调试管道

访问元数据会导致 Azure 数据工厂的嵌套管道

在 Azure 数据工厂中成功完成数据流后,为啥没有将数据传输到我的接收器表?

Azure 数据工厂 - 删除活动时出错

将元数据多源文件系统获取到 Azure SQL 表中

如何从 Azure 文件共享中获取文件元数据?