Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
适用于:
Azure 数据工厂
Azure Synapse Analytics
本文介绍一种解决模板方案,利用该模板,您可以通过“LastModifiedDate”来仅复制最新和已更改的文件,从基于文件的存储到目标存储。
关于此解决方案模板
此模板首先基于文件属性 LastModifiedDate ,只选择新增和变更的文件,然后将这些所选文件从数据源存储复制到数据目标存储。
该模板包含一个活动:
- Copy - 仅通过 LastModifiedDate 依据新文件和已更改文件,将其从文件存储复制到目标存储。
该模板定义六个参数:
- FolderPath_Source 是可从中读取源存储中的文件的文件夹路径。 需将默认值替换为自己的文件夹路径。
- Directory_Source 是可从中读取源存储中的文件的子文件夹路径。 需将默认值替换为自己的子文件夹路径。
- FolderPath_Destination 是目标存储中要将文件复制到的文件夹路径。 需将默认值替换为自己的文件夹路径。
- Directory_Destination 是指要在目标存储中复制文件到的子文件夹路径。 需将默认值替换为自己的子文件夹路径。
- LastModified_From 用于选择其 LastModifiedDate 属性迟于或等于此日期时间值的文件。 为了仅选择上次未复制的新文件,此日期/时间值可以是上次触发管道的时间。 可将默认值“2019-02-01T00:00:00Z”替换为 UTC 时区中的预期 LastModifiedDate。
- LastModified_To 用于选择其 LastModifiedDate 属性早于此日期时间值的文件。 为了仅选择以前运行中未复制的新文件,此日期/时间值可以是当前时间。 可将默认值“2019-02-01T00:00:00Z”替换为 UTC 时区中的预期 LastModifiedDate。
如何使用此解决方案模板
从 Azure 数据工厂 中的 Author 选项卡中导航到 模板库,然后选择 + 按钮,Pipeline,最后是 模板库。
搜索模板“仅按 LastModifiedDate 复制新文件”,选择它,然后选择“继续”。
与目标存储建立新的连接。 您要将文件复制到的地方是目的地存储。
创建与源存储的新连接。 用于复制文件的存储源是存储库所在的位置。
选择“使用此模板” 。
可以在面板中看到可用的管道,如以下示例所示:
选择“调试”,写入“参数”的值,然后选择“完成”。 在后面的图片中,我们将按如下所示设置参数。
- FolderPath_Source = 源文件夹
- Directory_Source = 子文件夹
- FolderPath_Destination = destinationfolder
- Directory_Destination = 子文件夹
- LastModified_From = 2019-02-01T00:00:00Z
- LastModified_To = 2019-03-01T00:00:00Z
此示例说明在时间跨度从2019-02-01T00:00:00Z到2019-03-01T00:00:00Z内,最后一次被修改的文件将从源路径sourcefolder/subfolder复制到目标路径destinationfolder/subfolder。 可以将这些时间参数或文件夹替换为自己的参数。
查看结果。 你会看到只有上次修改时间处于所配置时间跨度内的文件复制到了目标存储。
现在,可以添加一个滑动窗口触发器来自动化此管道,以便管道可以始终定期根据 LastModifiedDate 复制新文件和已更改的文件。 选择添加触发器,然后选择新建/编辑。
在“添加触发器”窗口中,选择“+ 新建”。
选择“翻转窗口”作为触发器类型,设置“每隔 15 分钟”作为重复周期(可更改为任意间隔时间)。 对于“已激活”框,请选择“是”,然后选择“确定”。
按如下所示设置“触发器运行参数”的值,然后选择“完成”。
- FolderPath_Source = sourcefolder。 您可以用您自己的文件夹替换源数据存储中的文件夹。
- Directory_Source = subfolder。 您可以将其替换为源数据存储中的子文件夹。
- FolderPath_Destination = destinationfolder。 您可以替换为目标数据存储中的您的文件夹。
- Directory_Destination = subfolder。 可以将其替换为目标数据存储中的你的子文件夹。
- LastModified_From = @trigger().outputs.windowStartTime. 这是触发器中的一个系统变量,确定了上次触发管道的时间。
- LastModified_To = @trigger().outputs.windowEndTime。 这是触发器中的一个系统变量,确定了本次触发管道的时间。
选择“全部发布”。
在数据源存储的源文件夹中创建新文件。 现在将等待自动触发管道,并仅将新文件复制到目标存储。
在左侧导航面板中选择“监视”选项卡;如果触发器的重复周期已设置为每 15 分钟,则等待大约 15 分钟。
查看结果。 你会看到管道每隔 15 分钟会自动触发一次,并且在每个管道运行中,只有来自源存储的新建或已更改文件会复制到目标存储。