Azure Synapse 資料總管支援擷取的資料格式 (預覽版)
資料擷取是透過資料總管新增資料至資料表並可供查詢的流程。 若是透過查詢內嵌之外的擷取方法,資料必須是下列支援的格式: 下表列出並描述資料總管支援的資料擷取格式。
注意
內嵌資料前,請確定您的資料已正確格式化,並定義預期的欄位。 建議您使用慣用的驗證程式來確認格式是否有效。 例如,您可能看到下列驗證程式適合檢查 CSV 或 JSON 檔案:
- CSV:http://csvlint.io/
- JSON:https://jsonlint.com/
如需擷取為什麼失敗的詳細資訊,請參考擷取失敗和資料總管中的內嵌錯誤碼。
格式 | 副檔名 | 描述 |
---|---|---|
ApacheAvro | .avro |
支援邏輯類型的 AVRO 格式。 目前支援下列壓縮轉碼器:null 、deflate 和snappy 。 apacheavro 格式的讀取器實作是基於官方的 Apache Avro 程式庫。 |
Avro | .avro |
AVRO 格式的舊版實作是基於 .NET 程式庫。 目前支援下列壓縮轉碼器:null 、deflate (snappy - 使用ApacheAvro 資料格式)。 |
CSV | .csv |
具有逗號分隔值的文字檔 (, )。 請參考RFC 4180:適用於逗點分隔值 (CSV) 檔案的一般格式和 MIME 類型。 |
JSON | .json |
具有以 \n 或 \r\n 分隔的 JSON 文字檔。 請參閱 JSON 程式碼行 (JSONL)。 |
MultiJSON | .multijson |
文字檔,其中包含屬性包的 JSON 陣列 (每個屬性包都代表一筆記錄),或任意多個以空白字元分隔的屬性包,\n 或 \r\n 。 每個屬性包都可以散佈在多行上。 除非資料是非屬性包,否則此格式會優先於JSON 。 |
ORC | .orc |
ORC 檔案。 |
Parquet | .parquet |
Parquet 檔案。 |
PSV | .psv |
具有分隔號分隔值 (| ) 的文字檔。 |
RAW | .raw |
其整個內容為單一字串值的文字檔。 |
SCsv | .scsv |
具有分號分隔值 (; ) 的文字檔。 |
SOHsv | .sohsv |
具有 SOH 分隔值的文字檔。 (SOH 是 ASCII 字碼指標 1;此格式是由 HDInsight 上的 Hive 使用)。 |
TSV | .tsv |
具有定位字元分隔值 (\t ) 的文字檔。 |
TSVE | .tsv |
具有定位字元分隔值 (\t ) 的文字檔。 反斜線字元 (\ ) 用於逸出。 |
TXT | .txt |
具有以 \n 分隔之程式碼行的文字檔。 會跳過空白行。 |
W3CLOGFILE | .log |
W3C 標準化的 Web 記錄檔格式。 |
支援的資料壓縮格式
您可透過下列任何壓縮演算法壓縮 blob 和檔案:
壓縮 | 副檔名 |
---|---|
GZip | .gz |
郵遞區號 | .zip |
在 blob 或檔案的名稱附加副檔名即可壓縮。
例如:
MyData.csv.zip
指定 blob 或檔案格式化為 CSV,並使用 ZIP 壓縮 (封存或單一檔案)MyData.json.gz
指定 blob 或檔案格式化為 JSON,並使用 GZip 壓縮。
同樣支援不包含格式化副檔名,只有壓縮副檔名 (例如,MyData.zip
) 的 blob 或檔案名稱。 在此情況下,您必須將檔案格式指定為擷取屬性 (因為無法加以推斷)。
注意
- 某些壓縮格式會追蹤原始檔案副檔名,作為壓縮資料流程的一部分。 通常會忽略此副檔名來判斷檔案格式。 如果無法從 (壓縮的) Blob 或檔案名稱判斷檔案格式,則必須透過
format
擷取屬性來指定。 - 請勿與
Parquet
、AVRO
和ORC
格式使用的內部 (區塊層級) 壓縮編解碼器混淆。 內部壓縮名稱通常在檔案格式副檔名前加上檔案名稱,例如:file1.gz.parquet
、file1.snappy.avro
等。