Azure Data Factory 和 Synapse Analytics 中的二進位格式

適用於:Azure Data Factory Azure Synapse Analytics

提示

試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用

下列連接器可支援二進位格式:Amazon S3Amazon S3 相容儲存體Azure BlobAzure Data Lake Storage Gen1Azure Data Lake Storage Gen2Azure 檔案儲存體檔案系統FTPGoogle Cloud StorageHDFSHTTPOracle Cloud StorageSFTP

您可以在複製活動GetMetadata 活動刪除活動中使用二進位資料集。 使用二進位資料集時,服務不會剖析檔案內容,而是將其視為原狀。

注意

在複製活動中使用二進位資料集時,您只能從二進位資料集複製到二進位資料集。

資料集屬性

如需可用來定義資料集的區段和屬性完整清單,請參閱資料集一文。 本節提供二進位資料集所支援的屬性清單。

屬性 描述 必要
type 資料集的類型屬性必須設定為二進位 Yes
location 檔案的位置設定。 每個檔案型連接器都包含專屬的位置類型,並支援 location 下的屬性。 請參閱連接器文章 -> 資料集屬性一節中的詳細資料 Yes
壓縮 設定檔案壓縮的屬性群組。 當您要在活動執行期間執行壓縮/解壓縮時,請設定此區段。 No
type 用來讀取/寫入二進位檔案的壓縮轉碼器。
允許的值為 bzip2gzipdeflateZipDflateTarTarGzip
請注意,使用複製活動將 ZipDeflate/TarGzip/Tar 檔案解壓縮並寫入檔案型接收資料存放區時,預設會將檔案擷取至資料夾:<path specified in dataset>/<folder named as source compressed file>/,在複製活動來源上使用 preserveZipFileNameAsFolder/preserveCompressionFileNameAsFolder 來控制是否要保留壓縮檔的名稱做為資料夾結構。
No
level 壓縮比。 於複製活動接收器中使用資料集時適用。
允許的值為 OptimalFastest
- Fastest:即使產生的檔案不以最佳方式壓縮,也應盡快完成壓縮作業。
- Optimal:即使作業需要較長時間完成,壓縮作業也應以最佳方式壓縮。 如需詳細資訊,請參閱 壓縮層級 主題。
No

以下是 Azure Blob 儲存體上的二進位資料集範例:

{
    "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"
            }
        }
    }
}

複製活動屬性

如需可用來定義活動的區段和屬性完整清單,請參閱管線一文。 本節提供二進位來源和接收器支援的屬性清單。

注意

在複製活動中使用二進位資料集時,您只能從二進位資料集複製到二進位資料集。

將二進位作為來源

複製活動的 [來源] 區段支援下列屬性。

屬性 描述 必要
type 複製活動來源的類型屬性必須設定為 BinarySource Yes
formatSettings 屬性群組。 請參閱以下的二進位讀取設定資料表。 No
storeSettings 屬性群組,可決定從資料存放區讀取資料的方式。 在 storeSettings 下,每個檔案型連接器都包含專屬的支援讀取設定。 請參閱連接器文章 -> 複製活動屬性一節中的詳細資料 No

支援 formatSettings 下的二進位讀取設定

屬性 描述 必要
type formatSettings 的類型必須設定為 BinaryReadSettings Yes
compressionProperties 關於如何針對指定的壓縮轉碼器解壓縮資料的一組屬性。 No
preserveZipFileNameAsFolder
(compressionProperties->type 下為 ZipDeflateReadSettings)
將輸入資料集設定為使用 ZipDeflate 壓縮時適用。 指出是否要在複製期間保留來源 ZIP 檔案名稱做為資料夾結構。
- 設定為 true (預設) 時,服務會將解壓縮的檔案寫入 <path specified in dataset>/<folder named as source zip file>/
- 設定為 false 時,服務會將解壓縮的檔案直接寫入 <path specified in dataset>。 請確定不同的來源 ZIP 檔案中沒有重複的檔案名稱,以避免發生競爭或非預期的行為。
No
preserveCompressionFileNameAsFolder
(compressionProperties-type> 下為 TarGZipReadSettingsTarReadSettings)
將輸入資料集設定為使用 TarGzip/Tar 壓縮時適用。 指出是否要在複製期間保留來源壓縮檔案名稱做為資料夾結構。
- 設定為 true (預設) 時,服務會將解壓縮的檔案寫入 <path specified in dataset>/<folder named as source compressed file>/
- 設定為 false 時,服務會將解壓縮的檔案直接寫入 <path specified in dataset>。 請確定不同的來源檔案中沒有重複的檔案名稱,以避免發生競爭或非預期的行為。
No
"activities": [
    {
        "name": "CopyFromBinary",
        "type": "Copy",
        "typeProperties": {
            "source": {
                "type": "BinarySource",
                "storeSettings": {
                    "type": "AzureBlobStorageReadSettings",
                    "recursive": true,
                    "deleteFilesAfterCompletion": true
                },
                "formatSettings": {
                    "type": "BinaryReadSettings",
                    "compressionProperties": {
                        "type": "ZipDeflateReadSettings",
                        "preserveZipFileNameAsFolder": false
                    }
                }
            },
            ...
        }
        ...
    }
]

將二進位作為接收器

複製活動的 [接收] 區段支援下列屬性。

屬性 描述 必要
type 複製活動來源的類型屬性必須設定為 BinarySink Yes
storeSettings 屬性群組,可決定將資料寫入資料存放區的方式。 每個以檔案為基礎的連接器在 storeSettings 底下皆具有自身的支援寫入設定。 請參閱連接器文章 -> 複製活動屬性一節中的詳細資料 No