Csv 数据工厂azure blob源-通配符

Csv 数据工厂azure blob源-通配符,csv,azure,azure-storage-blobs,cortana-intelligence,azure-data-factory,Csv,Azure,Azure Storage Blobs,Cortana Intelligence,Azure Data Factory,我相信可以在Azure Blob表源对象中通配符filename属性 我只想从blob存储中提取某些csv文件,这些文件与我不想处理的其他文件位于同一目录中: i、 e root/data/GUJH-01.csv root/data/GUJH-02.csv root/data/DFGT-01.csv 我想处理GUJH*.csv,而不是DFGT-01.csv 这可能吗?如果是这样,为什么blob源验证失败,通知我该文件不存在(消息报告根/数据blob不存在) 提前谢谢。回答我自己的问题 没有通配符

我相信可以在Azure Blob表源对象中通配符filename属性

我只想从blob存储中提取某些csv文件,这些文件与我不想处理的其他文件位于同一目录中:

i、 e

root/data/GUJH-01.csv

root/data/GUJH-02.csv

root/data/DFGT-01.csv

我想处理GUJH*.csv,而不是DFGT-01.csv

这可能吗?如果是这样,为什么blob源验证失败,通知我该文件不存在(消息报告根/数据blob不存在)


提前谢谢。

回答我自己的问题

没有通配符,但有一个“开始于”,它将在我的场景中起作用:

我可以在folderPath属性上执行root/data/GUJH,而不是root/data/GUJH*.csv,它将引入所有root/data/GUJH文件


:)

只是在这里添加一些细节,因为我发现这是一个非常困难的学习曲线,为了我和其他人的利益,我想记录下这一点

在blob存储中给定这样一个示例文件(本例中没有扩展名)

ZZZZ_20170727_1324

我们可以看到中间部分是yyyyMMdd格式

这将上载到文件夹
Landing
容器内
MyContainer

这是我的数据集定义的一部分::

    "typeProperties": {
        "folderPath": "MyContainer/Landing/ZZZZ_{DayCode}",
        "format": {
            "type": "TextFormat",
            "columnDelimiter": "\u0001"
        },
        "partitionedBy": [
            {
                "name": "DayCode",
                "value": {
                    "type": "DateTime",
                    "date": "SliceStart",
                    "format": "yyyyMMdd"
                }
            }
        ]
    },
请注意,这是一个“前缀”,如果您能找到它们,您将在日志/错误消息中看到它(祝您好运)

如果要测试加载此特定文件,需要按“图表”按钮,然后深入管道,直到找到目标数据集—文件加载到的数据集(我正在将此数据集加载到SQL Azure)。单击目标数据集,现在转到并找到正确的时间片。在我的例子中,我需要找到起始时间片为20170727的时间片并运行该时间片

这将确保拾取正确的文件并将其加载到SQL Azure中


忘记手动运行管道或活动-这不是它的工作方式。您需要在时间片下运行输出数据集才能将其完成。

我也花了很长时间来解决这个问题。现在我想知道如何将其限制为CSV文件ony?只需确保未指定
filePath
,并且
folderPath
具有包含文件名的完整路径即可。还要确保运行正确的时间片。我只是在运行一个随机的时间片,它反过来传入了错误的参数,这意味着它找不到文件