我被认为您可以在Azure Blob表源对象中使用通配符filename属性。
我只想从blob存储中获取某些csv文件,这些文件存在于与我不想处理的其他文件相同的目录中:
即。
根/数据/ GUJH-01.csv
根/数据/ GUJH-02.csv
根/数据/ DFGT-01.csv
我想处理GUJH * .csv而不是DFGT-01.csv
这可能吗?如果是这样,为什么我的blob源验证失败,通知我该文件不存在(该消息报告根/数据blob不存在。
提前致谢。
答案 0 :(得分:3)
回答我自己的问题..
没有通配符,但有一个'Starts With'可以在我的场景中使用:
而不是root / data / GUJH * .csv我可以在folderPath属性上执行root / data / GUJH,它将引入所有root / data / GUJH文件..
:)
答案 1 :(得分:0)
在这里添加更多详细信息,因为我发现这是一个非常困难的学习曲线,并且我想为我和其他人记录这些。
在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
忘记手动运行管道或活动 - 这不是它的工作原理。您需要在时间片下运行输出数据集以完成它。