你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
适用于:
Azure Data Factory
Azure Synapse Analytics
提示
Microsoft Fabric 中的 Data Factory 是下一代 Azure Data Factory,具有更加简化的架构、内置人工智能和新功能。 如果不熟悉数据集成,请从Fabric数据工厂开始。 现有 ADF 工作负载可以升级到 Fabric,以跨数据科学、实时分析和报告访问新功能。
以下连接器支持二进制格式:
可以在 Copy activity、GetMetadata 活动或 Delete 活动中使用二进制数据集。 使用二进制数据集时,服务不会分析文件内容,而是将其视为 as-is。
注意
在复制活动中使用二进制数据集时,只能从二进制数据集复制到二进制数据集。
数据集属性
有关可用于定义数据集的各部分和属性的完整列表,请参阅数据集一文。 本部分提供二进制数据集支持的属性列表。
| 属性 | 描述 | 必需 |
|---|---|---|
| 类型 | 数据集的 type 属性必须设置为 Binary。 | 是 |
| 位置 | 文件的位置设置。 每个基于文件的连接器在 location 下都有其自己的位置类型和支持的属性。 请在连接器文章 -> 数据集属性部分中查看详细信息。 |
是 |
| 压缩 | 用来配置文件压缩的属性组。 如果需要在活动执行期间进行压缩/解压缩,请配置此部分。 | 否 |
| 类型 | 用于读取/写入二进制文件的压缩编解码器。 允许的值为 bzip2、gzip、deflate、ZipDeflate、Tar 或 TarGzip 。 注意:当使用“复制”操作来解压 ZipDeflate/TarGzip/Tar 文件并写入基于文件的数据存储时,默认情况下文件将解压到以下文件夹: <path specified in dataset>/<folder named as source compressed file>/,请在 preserveZipFileNameAsFolder/preserveCompressionFileNameAsFolder 上的复制操作源中设置,以控制是否保留压缩文件的名称作为文件夹结构。 |
否 |
| 水平仪 | 压缩率。 在 Copy 活动接收器中使用数据集时应用。 允许的值为 Optimal 或 Fastest。 - 最快:压缩操作应尽可能快地完成,即使生成的文件未能达到最佳压缩效果。 - 最佳:压缩操作应达到最佳效果,即使这需要更长时间才能完成。 有关详细信息,请参阅 Compression Level(压缩级别)主题。 |
否 |
下面是Azure Blob Storage上的二进制数据集示例:
{
"name": "BinaryDataset",
"properties": {
"type": "Binary",
"linkedServiceName": {
"referenceName": "<Azure Blob Storage linked service name>",
"type": "LinkedServiceReference"
},
"typeProperties": {
"location": {
"type": "AzureBlobStorageLocation",
"container": "containername",
"folderPath": "folder/subfolder",
},
"compression": {
"type": "ZipDeflate"
}
}
}
}
复制活动属性
有关可用于定义活动的各部分和属性的完整列表,请参阅管道一文。 本部分提供二进制源和接收器支持的属性列表。
注意
在复制活动中使用二进制数据集时,只能从二进制数据集复制到二进制数据集。
二进制文件作为源
复制活动 *source* 节中支持以下属性。
| 属性 | 描述 | 必需 |
|---|---|---|
| 类型 | 复制活动源的 type 属性必须设置为 BinarySource。 | 是 |
| 格式设置 | 一组属性。 请参阅下方的“二进制读取设置”表。 | 否 |
| 存储设置 | 有关如何从数据存储读取数据的一组属性。 每个基于文件的连接器在 storeSettings 下都有其自己支持的读取设置。
有关详细信息,请参阅连接器文章中的“复制活动属性”部分>。 |
否 |
在下支持的formatSettings:
| 属性 | 描述 | 必需 |
|---|---|---|
| 类型 | formatSettings 的类型必须设置为“BinaryReadSettings”。 | 是 |
| 压缩属性 | 一组属性,指示如何为给定的压缩编解码器解压缩数据。 | 否 |
| preserveZipFileNameAsFolder (在 compressionProperties->type 下为 ZipDeflateReadSettings) |
当输入数据集配置了 ZipDeflate 压缩时适用。 指示是否在复制过程中以文件夹结构形式保留源 zip 文件名。 - 如果设置为“true(默认)”,服务会将解压缩的文件写入 。 - 如果设置为“false”,服务会将解压缩的文件直接写入 。 请确保不同的源 zip 文件中没有重复的文件名,以避免产生冲突或出现意外行为。 |
否 |
| 保留压缩文件名作为文件夹 (在 compressionProperties->type 下为 TarGZipReadSettings 或 TarReadSettings) |
当输入数据集配置了 TarGzip 和 / 压缩时,适用 。 指示是否在复制过程中以文件夹结构形式保留源压缩文件名。 - 如果设置为“true(默认)”,服务会将解压缩后的文件写入 。 - 将其设置为false时,服务会把解压缩的文件直接写入 <path specified in dataset>。 请确保不同的源文件中没有重复的文件名,以避免产生冲突或出现意外行为。 |
否 |
"activities": [
{
"name": "CopyFromBinary",
"type": "Copy",
"typeProperties": {
"source": {
"type": "BinarySource",
"storeSettings": {
"type": "AzureBlobStorageReadSettings",
"recursive": true,
"deleteFilesAfterCompletion": true
},
"formatSettings": {
"type": "BinaryReadSettings",
"compressionProperties": {
"type": "ZipDeflateReadSettings",
"preserveZipFileNameAsFolder": false
}
}
},
...
}
...
}
]
二进制文件作为接收器
复制活动的 *sink* 部分支持以下属性。
| 属性 | 描述 | 必需 |
|---|---|---|
| 类型 | 复制活动源的 type 属性必须设置为 BinarySink。 | 是 |
| 存储设置 | 有关如何将数据写入到数据存储的一组属性。 每个基于文件的连接器在 storeSettings 下都有其自身支持的写入设置。
有关详细信息,请参阅连接器文章中的“复制活动属性”部分>。 |
否 |