本文概述了如何使用管道中的复制活动从/向 Azure Blob 存储复制数据。
支持的格式
Azure Blob 存储支持以下文件格式。 请参阅每一篇介绍基于格式的设置的文章。
支持的配置
有关复制活动下每个选项卡的配置,请分别转到以下部分。
概况
请参阅 常规 设置 指南,以配置 常规 设置选项卡。
来源
复制活动的 “源 ”选项卡下的 Azure Blob 存储支持以下属性。
需要以下属性:
- 连接:从连接列表中选择 Azure Blob 存储连接。 如果不存在连接,则通过选择“ 新建”创建新的 Azure Blob 存储连接。
- 文件路径:选择 “浏览 ”以选择要复制的文件,或手动填写路径。
- 文件设置:选择 文件设置 以配置文件格式。 有关不同文件格式的设置,请参阅 支持格式 的文章以了解详细信息。
在“高级”下,可以指定以下字段:
文件路径类型:可以选择 文件路径、 前缀、 通配符文件路径、 文件列表 作为文件路径类型。 每个设置的配置是:
文件路径:如果选择此类型,则可以从之前指定的给定容器或文件夹/文件路径复制数据。
前缀:在配置为筛选源 blob 的给定容器下,用于 blob 名称的前缀。 名称以
container/this_prefix开头的 Blob 已被选中。 它利用 Blob 存储的服务端筛选器。使用 Prefix 并选择复制到具有保留层次结构的基于文件的目标时,将保留前缀中最后一个“/”后面的子路径。 例如,你有一个源
container/folder/subfolder/file.txt,并将前缀配置为folder/sub,然后保留的文件路径是subfolder/file.txt。
通配符文件路径:使用给定 Blob 容器下的通配符指定文件夹或文件路径,以筛选源文件夹或文件。
允许的通配符是
*(匹配零个或多个字符)和?(匹配零或单个字符)。 如果文件夹名称中包含通配符或转义符,则使用^进行转义。 有关更多示例,请转到 文件夹和文件筛选器示例。
通配符文件夹路径:指定具有给定容器下通配符的文件夹路径以筛选源文件夹。
通配符文件名:使用给定容器和文件夹路径(或通配符文件夹路径)下的通配符指定文件名以筛选源文件。
文件列表:指示要复制到的给定文件集。 在 文件路径列表中,输入或浏览到包含要复制的文件列表的文本文件,每行一个文件,即每个文件的相对路径。
使用此选项时,请勿指定文件名。 有关更多示例,请转到 文件列表示例。
递归方式:如果选中此复选框,则以递归方式处理输入文件夹及其子文件夹中的所有文件。 如果取消选中该复选框,则仅处理所选文件夹中的复选框。 选择单个文件时,将禁用此设置。
完成后删除文件:如果选中此复选框,则成功移动到目标存储后,将从源存储中删除二进制文件。 文件删除是按文件删除的,因此当复制活动失败时,你会注意到,某些文件已复制到目标并从源中删除,而其他文件仍在源存储中。
注释
此属性仅在二进制文件复制方案中有效。
最大并发连接数:此属性指示活动运行期间与数据存储建立的并发连接上限。 仅当想要限制并发连接时,才指定一个值。
目的地
复制活动的 “目标 ”选项卡下的 Azure Blob 存储支持以下属性。
需要以下属性:
- 连接: 从连接列表中选择 Azure Blob 存储连接。 如果连接不存在,则通过选择“ 新建”创建新的 Azure Blob 存储连接。
- 文件路径: 选择 “浏览 ”以选择要手动复制或填写路径的文件。
- 文件设置:选择 文件设置 以配置文件格式。 有关不同文件格式的设置,请参阅 支持格式 的文章以了解详细信息。
在“高级”下,可以指定以下字段:
复制行为:当源是基于文件的数据存储中的文件时,定义复制行为。 可以从下拉列表中选择 “添加动态内容”、“ 无”、“ FlattenHierarchy”或 “保留层次结构 ”。
添加动态内容:若要指定属性值的表达式,请选择 “添加动态内容”。 此选择将打开表达式生成器,你可以在其中从受支持的系统变量、活动输出、函数和用户指定的变量或参数生成表达式。 有关表达式语言的信息,请转到 表达式和函数。
无:选择此项以不使用任何复制行为。
平展层次结构:源文件夹中的所有文件都位于目标文件夹的第一级。 目标文件具有自动生成的名称。
保留层次结构:保留目标文件夹中的文件层次结构。 源文件到源文件夹的相对路径与目标文件夹的目标文件的相对路径相同。
最大并发连接:活动运行期间与数据存储建立的并发连接上限。 仅当想要限制并发连接时,才指定一个值。
块大小(MB):指定块大小(以 MB 为单位),用于将数据写入块 Blob。 有关详细信息,请转到关于块状 Blob。
元数据:在复制到目标时设置自定义元数据。
metadata数组下的每个对象都表示一个额外的列。name定义元数据键名称,value表示该键的数据值。 如果使用保留属性功能 ,则指定的元数据将与源文件元数据联合/覆盖。允许的数据值为:
$$LASTMODIFIED:保留变量指示存储源文件的上次修改时间。 仅适用于二进制格式的基于文件的源。表达式
静态值
映射
对于 “映射 ”选项卡配置,请转到 “映射”选项卡下的“配置映射”。如果选择“二进制”作为文件格式,则不支持映射。
设置
有关 “设置” 选项卡配置,请参阅 “设置”选项卡下的“配置其他设置”。
表摘要
下表包含有关 Azure Blob 存储中的复制活动的详细信息。
源信息
| Name | Description | 价值 | 必选 | JSON 脚本属性 |
|---|---|---|---|---|
| 连接 | 与源数据存储的连接。 | <连接> | 是的 | 连接 |
| 文件路径 | 源数据的文件路径。 | <源文件路径> | 是的 | 容器 fileName |
| 文件路径类型 | 要使用的文件路径类型。 | • 文件路径 •前缀 • 通配符文件夹路径、通配符文件名 • 文件列表 |
否 | •前缀 • 通配符文件夹路径 (wildcardFolderPath)、通配符文件名 (wildcardFileName) • fileListPath(文件列表路径) |
| 递归 | 以递归方式处理输入文件夹及其子文件夹中的所有文件,或仅处理所选文件夹中的文件。 选择单个文件时,将禁用此设置。 | 选择或取消选择 | 否 | recursive |
| 完成后删除文件 | 将源数据存储中的文件移动到目标存储后,将立即删除。 文件删除是按文件删除的,因此当复制活动失败时,可以告知某些文件已复制到目标并从源中删除,而其他文件仍位于源存储中。 | 选择或取消选择 | 否 | deleteFilesAfterCompletion |
| 最大并发连接数 | 活动运行期间与数据存储建立的并发连接的上限。 仅当想要限制并发连接时,才指定一个值。 | <最大并发连接数> | 否 | maxConcurrentConnections |
目的地信息
| Name | Description | 价值 | 必选 | JSON 脚本属性 |
|---|---|---|---|---|
| 连接 | 与目标数据存储的连接。 | <连接> | 是的 | 连接 |
| 文件路径 | 目标数据的文件路径。 | 源的文件路径 | 是的 | 容器 fileName |
| 复制行为 | 定义将文件从一个文件系统(如存储)复制到另一个文件系统(例如,从一个 Blob 存储复制到另一个 Blob 存储)时的行为。 | •没有 • 添加动态内容 简化层次结构 • 保留层次结构 |
否 | copyBehavior |
| 最大并发连接数 | 活动运行期间与数据存储建立的并发连接的上限。 仅当想要限制并发连接时,才指定一个值。 | <最大并发连接数> | 否 | maxConcurrentConnections |
| 块大小(MB) | 将数据写入 Azure Blob 存储时,以 MB 为单位指定块大小。 允许的值介于 4 MB 和 100 MB 之间。 | <块大小> | 否 | blockSizeInMB |
| 元数据 | 在复制自定义元数据到目标时进行设置。 | • $$LASTMODIFIED•表达 • 静态值 |
否 | 元数据 |