1

我正在使用复制数据活动将数据发送到 Azure Data Lake Storage Gen2。为此,我必须每天创建一个以当前时间戳结尾的新文件夹。所以今天我的管道启动,在存储资源管理器的正确路径中,我应该看到:

文件夹名称_2021-11-02

我不在乎格式,我只需要日期。在“路径”(复制数据活动的“接收器”部分)中,我写道:

@parent_folder/folder_name_utcNow()

但我收到以下错误:@parent_folder/folder_name_utcNow() 无效:不希望出现位置 '13' 处的字符串字符 '/'。

4

1 回答 1

1

您需要以正确的格式创建字符串并将其放在正确的位置。这是一个示例,我使用concat它来连接多个字符串,formatDateTime以将输出转换为utcNow可以在文件名中使用的字符串格式。我在接收器输出数据集的文件路径属性中使用此动态内容。

注意我在格式字符串中使用正斜杠确保我获得了数据湖层次结构。如果您只想要一个包含日期的文件,请将它们替换为下划线或完全删除它们:

@concat('raw/ball/', formatDateTime(utcNow(), 'yyyy/MM/dd/HH/mm/'))

输出数据集:

在此处输入图像描述

你可能想要这样的东西:

@concat('raw/parent_folder/folder_name_/', formatDateTime(utcNow(), 'yyyyMMdd'))

尽管按照我的原始示例使用日期文件夹更为常见。

于 2021-11-02T18:18:18.863 回答