共用方式為


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]。 選取 [設定 ] 以進一步設定此格式。

顯示檔案格式設定的螢幕快照。

JSON 格式作為來源

選取 [檔案格式] 區段中的 [設定] 之後,快顯 [檔案格式設定] 對話框中會顯示下列屬性。

顯示 JSON 檔案格式來源的螢幕快照。

  • 壓縮類型:選擇用來讀取下拉式清單中的 JSON 檔案的壓縮編解碼器。 您可以選擇 Nonebzip2gzipdeflateZipDeflateTarGziptar

    如果您選取 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> 請確定不同的來源檔案中沒有重複的檔案名稱,以避免發生競爭或非預期的行為。
  • 壓縮層級:壓縮比例。 您可以選擇最快最佳

    • 最快:即使產生的檔案不以最佳方式壓縮,也應盡快完成壓縮作業。

    • Optimal:即使作業需要較長時間完成,壓縮作業也應以最佳方式壓縮。 如需詳細資訊,請移至 壓縮層級 一文。

  • 編碼:指定用來讀取測試檔案的編碼類型。 從下拉式清單選取一個類型。 預設值為 UTF-8

JSON 格式作為目的地

選取 [ 設定] 之後,快顯 [檔案格式設定 ] 對話框中會顯示下列屬性。

顯示 JSON 檔案格式目的地的螢幕快照。

  • 壓縮類型:選擇用來寫入下拉式清單中的 JSON 檔案的壓縮編解碼器。 您可以選擇 Nonebzip2gzipdeflateZipDeflateTarGziptar

  • 壓縮層級:壓縮比例。 您可以選擇最佳最快

    • 最快:即使產生的檔案不以最佳方式壓縮,也應盡快完成壓縮作業。

    • Optimal:即使作業需要較長時間完成,壓縮作業也應以最佳方式壓縮。 如需詳細資訊,請移至 壓縮層級 一文。

  • 編碼:指定用來寫入測試檔案的編碼類型。 從下拉式清單選取一個類型。 預設值為 UTF-8

[目的地] 索引標籤的 [進階設定] 底下,會顯示下列 JSON 格式相關屬性。

  • 檔案模式:指定儲存在每個 JSON 檔案中的資料模式。 允許的值為: 物件 集 (JSON Lines) 和 對象的陣列。 預設值為物件集。 關於這些模式的詳細資訊,請參閱 JSON 檔案模式一節。

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 腳本屬性
檔案格式 選取要使用的檔案格式。 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 下為 TarGZipReadSettingsTarReadSettings):
true (預設) 或 false

JSON 作為目的地

使用 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