訓練
Data Factory in Microsoft Fabric 中的 JSON 格式
本文概述如何在 Microsoft Fabric 的 Data Factory 資料管線中設定 JSON 格式。
下列活動和連接器支援 JSON 格式作為來源和目的地。
類別 | 連接器/活動 |
---|---|
支援的連接器 | Amazon S3 |
Amazon S3 相容 | |
Azure Blob 儲存體 | |
Azure Data Lake Storage Gen1 | |
Azure Data Lake Storage Gen2 \(部分機器翻譯\) | |
Azure 檔案 | |
檔案系統 | |
FTP | |
Google Cloud Storage | |
HTTP | |
Lakehouse 檔案 | |
Oracle 雲端儲存空間 | |
SFTP | |
支援的活動 | 複製活動(來源/目的地) |
查閱活動 | |
GetMetadata 活動 | |
刪除活動 |
若要設定 JSON 格式,請在資料管線複製活動的來源或目的地中選擇您的連線,然後在 [檔案格式] 下拉式清單中選取 [JSON]。 選取 [設定 ] 以進一步設定此格式。
選取 [檔案格式] 區段中的 [設定] 之後,快顯 [檔案格式設定] 對話框中會顯示下列屬性。
壓縮類型:選擇用來讀取下拉式清單中的 JSON 檔案的壓縮編解碼器。 您可以選擇 None、bzip2、gzip、deflate、ZipDeflate、TarGzip 或 tar。
如果您選取 ZipDeflate 作為壓縮類型,則系統會在來源索引標籤中的進階設定下顯示保留 zip 檔案名稱作為資料夾。
- 將 ZIP 檔案名稱保留為資料夾:指出是否要在複製期間保留來源 ZIP 檔案名稱做為資料夾結構。
- 如果核取此方塊(預設值),服務會將解壓縮的檔案寫入至
<specified file path>/<folder named as source zip file>/
。 - 如果未核取此方塊,服務會將解壓縮的檔案直接寫入 。
<specified file path>
請確定不同的來源 ZIP 檔案中沒有重複的檔案名稱,以避免發生競爭或非預期的行為。
- 如果核取此方塊(預設值),服務會將解壓縮的檔案寫入至
如果您選取 TarGzip/tar 作為壓縮類型,則系統會在來源索引標籤中的進階設定下顯示保留壓縮檔案名稱作為資料夾。
- 將壓縮檔名稱保留為資料夾:指出是否要在複製期間保留來源壓縮檔案名稱做為資料夾結構。
- 如果核取此方塊(預設值),服務會將解壓縮的檔案寫入至
<specified file path>/<folder named as source compressed file>/
。 - 如果未核取此方塊,服務會將解壓縮的檔案直接寫入 。
<specified file path>
請確定不同的來源檔案中沒有重複的檔案名稱,以避免發生競爭或非預期的行為。
- 如果核取此方塊(預設值),服務會將解壓縮的檔案寫入至
- 將 ZIP 檔案名稱保留為資料夾:指出是否要在複製期間保留來源 ZIP 檔案名稱做為資料夾結構。
壓縮層級:壓縮比例。 您可以選擇最快或最佳。
最快:即使產生的檔案不以最佳方式壓縮,也應盡快完成壓縮作業。
Optimal:即使作業需要較長時間完成,壓縮作業也應以最佳方式壓縮。 如需詳細資訊,請移至 壓縮層級 一文。
編碼:指定用來讀取測試檔案的編碼類型。 從下拉式清單選取一個類型。 預設值為 UTF-8。
選取 [ 設定] 之後,快顯 [檔案格式設定 ] 對話框中會顯示下列屬性。
壓縮類型:選擇用來寫入下拉式清單中的 JSON 檔案的壓縮編解碼器。 您可以選擇 None、bzip2、gzip、deflate、ZipDeflate、TarGzip 或 tar。
壓縮層級:壓縮比例。 您可以選擇最佳或最快。
最快:即使產生的檔案不以最佳方式壓縮,也應盡快完成壓縮作業。
Optimal:即使作業需要較長時間完成,壓縮作業也應以最佳方式壓縮。 如需詳細資訊,請移至 壓縮層級 一文。
編碼:指定用來寫入測試檔案的編碼類型。 從下拉式清單選取一個類型。 預設值為 UTF-8。
在 [目的地] 索引標籤的 [進階設定] 底下,會顯示下列 JSON 格式相關屬性。
- 檔案模式:指定儲存在每個 JSON 檔案中的資料模式。 允許的值為: 物件 集 (JSON Lines) 和 對象的陣列。 預設值為物件集。 關於這些模式的詳細資訊,請參閱 JSON 檔案模式一節。
從 JSON 檔案複製資料時,複製活動可以自動偵測並剖析下列 JSON 檔案的模式。 將資料寫入 JSON 檔案時,您可以在複製活動目的地上設定檔案模式。
類型 I:setOfObjects
每個檔案都包含單一物件、JSON 行或串連物件。
單一物件 JSON 範例
{ "time": "2015-04-29T07:12:20.9100000Z", "callingimsi": "466920403025604", "callingnum1": "678948008", "callingnum2": "567834760", "switch1": "China", "switch2": "Germany" }
JSON 線條 (目的地的預設值)
{"time":"2015-04-29T07:12:20.9100000Z","callingimsi":"466920403025604","callingnum1":"678948008","callingnum2":"567834760","switch1":"China","switch2":"Germany"} {"time":"2015-04-29T07:13:21.0220000Z","callingimsi":"466922202613463","callingnum1":"123436380","callingnum2":"789037573","switch1":"US","switch2":"UK"} {"time":"2015-04-29T07:13:21.4370000Z","callingimsi":"466923101048691","callingnum1":"678901578","callingnum2":"345626404","switch1":"Germany","switch2":"UK"}
串連的 JSON 範例
{ "time": "2015-04-29T07:12:20.9100000Z", "callingimsi": "466920403025604", "callingnum1": "678948008", "callingnum2": "567834760", "switch1": "China", "switch2": "Germany" } { "time": "2015-04-29T07:13:21.0220000Z", "callingimsi": "466922202613463", "callingnum1": "123436380", "callingnum2": "789037573", "switch1": "US", "switch2": "UK" } { "time": "2015-04-29T07:13:21.4370000Z", "callingimsi": "466923101048691", "callingnum1": "678901578", "callingnum2": "345626404", "switch1": "Germany", "switch2": "UK" }
類型 II:arrayOfObjects
每個檔案都會包含物件的陣列。
[ { "time": "2015-04-29T07:12:20.9100000Z", "callingimsi": "466920403025604", "callingnum1": "678948008", "callingnum2": "567834760", "switch1": "China", "switch2": "Germany" }, { "time": "2015-04-29T07:13:21.0220000Z", "callingimsi": "466922202613463", "callingnum1": "123436380", "callingnum2": "789037573", "switch1": "US", "switch2": "UK" }, { "time": "2015-04-29T07:13:21.4370000Z", "callingimsi": "466923101048691", "callingnum1": "678901578", "callingnum2": "345626404", "switch1": "Germany", "switch2": "UK" } ]
使用 JSON 格式時,複製活動的來源區段支援下列屬性。
名稱 | 描述 | 值 | 必要 | JSON 腳本屬性 |
---|---|---|---|---|
檔案格式 | 選取要使用的檔案格式。 | JSON | Yes | type (在 datasetSettings 下):Json |
壓縮類型 | 用來讀取 JSON 檔案的壓縮編解碼器。 | 從下列項目中選擇: None bzip2 gzip deflate ZipDeflate TarGzip tar |
No | type (在 compression 下):bzip2 gzip deflate ZipDeflate TarGzip tar |
壓縮層級 | 壓縮比。 | 最快 最佳 |
No | 層級 (下 compression ):最快 最佳 |
編碼方式 | 用來讀取測試檔案的編碼類型。 | "UTF-8" (依預設)、"UTF-8 without BOM"、"UTF-16LE"、"UTF-16BE"、"UTF-32LE"、"UTF-32BE"、"US-ASCII"、"UTF-7"、"BIG5"、"EUC-JP"、"EUC-KR"、"GB2312"、"GB18030"、"JOHAB"、"SHIFT-JIS"、"CP875"、"CP866"、"IBM00858"、"IBM037"、"IBM273"、"IBM437"、"IBM500"、"IBM737"、"IBM775"、"IBM850"、"IBM852"、"IBM855"、"IBM857"、"IBM860"、"IBM861"、"IBM863"、"IBM864"、"IBM865"、"IBM869"、"IBM870"、"IBM01140"、"IBM01141"、"IBM01142"、"IBM01143"、"IBM01144"、"IBM01145"、"IBM01146"、"IBM01147"、"IBM01148"、"IBM01149"、"ISO-2022-JP"、"ISO-2022-KR"、"ISO-8859-1"、"ISO-8859-2"、"ISO-8859-3"、"ISO-8859-4"、"ISO-8859-5"、"ISO-8859-6"、"ISO-8859-7"、"ISO-8859-8"、"ISO-8859-9"、"ISO-8859-13"、"ISO-8859-15"、"WINDOWS-874"、"WINDOWS-1250"、"WINDOWS-1251"、"WINDOWS-1252"、"WINDOWS-1253"、"WINDOWS-1254"、"WINDOWS-1255"、"WINDOWS-1256"、"WINDOWS-1257"、"WINDOWS-1258" | 不 | encodingName |
將 zip 檔名保留為資料夾 | 指出是否要在複製期間保留來源 ZIP 檔案名稱做為資料夾結構。 | 已選取 (預設值) 或取消選取 | No | preserveZipFileNameAsFolder ( compressionProperties ->type 下為 ZipDeflateReadSettings ):true (預設) 或 false |
將壓縮檔名保留為資料夾 | 指出是否要在複製期間保留來源壓縮檔案名稱做為資料夾結構。 | 已選取 (預設值) 或取消選取 | No | preserveCompressionFileNameAsFolder ( compressionProperties ->type 下為 TarGZipReadSettings 或 TarReadSettings ):true (預設) 或 false |
使用 JSON 格式時,複製活動 目的地 區段支援下列屬性。
名稱 | 描述 | 值 | 必要 | JSON 腳本屬性 |
---|---|---|---|---|
檔案格式 | 選取要使用的檔案格式。 | JSON | Yes | type (在 datasetSettings 下):Json |
壓縮類型 | 用來寫入 JSON 檔案的壓縮轉碼器。 | 從下列項目中選擇: None bzip2 gzip deflate ZipDeflate TarGzip tar |
No | type (在 compression 下):bzip2 gzip deflate ZipDeflate TarGzip tar |
壓縮層級 | 壓縮比。 | 最快 最佳 |
No | 層級 (下 compression ):最快 最佳 |
編碼方式 | 用來寫入測試檔案的編碼類型。 | "UTF-8" (依預設)、"UTF-8 without BOM"、"UTF-16LE"、"UTF-16BE"、"UTF-32LE"、"UTF-32BE"、"US-ASCII"、"UTF-7"、"BIG5"、"EUC-JP"、"EUC-KR"、"GB2312"、"GB18030"、"JOHAB"、"SHIFT-JIS"、"CP875"、"CP866"、"IBM00858"、"IBM037"、"IBM273"、"IBM437"、"IBM500"、"IBM737"、"IBM775"、"IBM850"、"IBM852"、"IBM855"、"IBM857"、"IBM860"、"IBM861"、"IBM863"、"IBM864"、"IBM865"、"IBM869"、"IBM870"、"IBM01140"、"IBM01141"、"IBM01142"、"IBM01143"、"IBM01144"、"IBM01145"、"IBM01146"、"IBM01147"、"IBM01148"、"IBM01149"、"ISO-2022-JP"、"ISO-2022-KR"、"ISO-8859-1"、"ISO-8859-2"、"ISO-8859-3"、"ISO-8859-4"、"ISO-8859-5"、"ISO-8859-6"、"ISO-8859-7"、"ISO-8859-8"、"ISO-8859-9"、"ISO-8859-13"、"ISO-8859-15"、"WINDOWS-874"、"WINDOWS-1250"、"WINDOWS-1251"、"WINDOWS-1252"、"WINDOWS-1253"、"WINDOWS-1254"、"WINDOWS-1255"、"WINDOWS-1256"、"WINDOWS-1257"、"WINDOWS-1258" | 不 | encodingName |
檔案模式 | 表示每個 JSON 檔案中儲存的資料模式。 | 物件集合 物件陣列 |
No | filePattern: setOfObjects arrayOfObjects |