Udostępnij za pośrednictwem


Format JSON w usłudze Data Factory w usłudze Microsoft Fabric

W tym artykule opisano sposób konfigurowania formatu JSON w potoku danych usługi Data Factory w usłudze Microsoft Fabric.

Obsługiwane możliwości

Format JSON jest obsługiwany w przypadku następujących działań i łączników jako źródła i miejsca docelowego.

Kategoria Łącznik/działanie
Obsługiwany łącznik Amazon S3
Zgodność z usługą Amazon S3
Azure Blob Storage
Usługa Azure Data Lake Storage 1. generacji
Azure Data Lake Storage Gen2
Azure Files
System plików
FTP
Google Cloud Storage
HTTP
Pliki lakehouse
Oracle Cloud Storage
SFTP
Obsługiwane działanie działanie Kopiuj (źródło/miejsce docelowe)
Działanie Lookup
Działanie GetMetadata
Działanie usuwania

Format JSON w działaniu kopiowania

Aby skonfigurować format JSON, wybierz połączenie w źródle lub miejscu docelowym działania kopiowania potoku danych, a następnie wybierz pozycję JSON z listy rozwijanej Format pliku. Wybierz pozycję Ustawienia , aby uzyskać dalszą konfigurację tego formatu.

Zrzut ekranu przedstawiający ustawienia formatu pliku.

Format JSON jako źródło

Po wybraniu pozycji Ustawienia w sekcji Format pliku w oknie dialogowym Ustawienia formatu pliku zostaną wyświetlone następujące właściwości.

Zrzut ekranu przedstawiający źródło formatu pliku JSON.

  • Typ kompresji: wybierz koder-dekoder kompresji używany do odczytywania plików JSON na liście rozwijanej. Możesz wybrać spośród opcji Brak, bzip2, gzip, deflate, ZipDeflate, TarGzip lub tar.

    Jeśli wybierzesz opcję ZipDeflate jako typ kompresji, zachowaj nazwę pliku zip jako folder jest wyświetlany w obszarze Ustawienia zaawansowane na karcie Źródło .

    • Zachowaj nazwę pliku zip jako folder: wskazuje, czy podczas kopiowania zachować nazwę źródłowego pliku zip jako strukturę folderów.
      • Jeśli to pole jest zaznaczone (ustawienie domyślne), usługa zapisuje rozpakowane pliki na .<specified file path>/<folder named as source zip file>/
      • Jeśli to pole jest niezaznaczone, usługa zapisuje rozpakowane pliki bezpośrednio do <specified file path>. Upewnij się, że nie masz zduplikowanych nazw plików w różnych źródłowych plikach zip, aby uniknąć wyścigów ani nieoczekiwanych zachowań.

    W przypadku wybrania opcji TarGzip/tar jako typu kompresji zachowaj nazwę pliku kompresji jako folder jest wyświetlany w obszarze Ustawienia zaawansowane na karcie Źródło .

    • Zachowaj nazwę pliku kompresji jako folder: wskazuje, czy podczas kopiowania zachować nazwę skompresowanego pliku źródłowego jako strukturę folderów.
      • Jeśli to pole jest zaznaczone (ustawienie domyślne), usługa zapisuje dekompresowane pliki do <specified file path>/<folder named as source compressed file>/.
      • Jeśli to pole jest niezaznaczone, usługa zapisuje dekompresowane pliki bezpośrednio do <specified file path>. Upewnij się, że nie masz zduplikowanych nazw plików w różnych plikach źródłowych, aby uniknąć wyścigów ani nieoczekiwanych zachowań.
  • Poziom kompresji: współczynnik kompresji. Możesz wybrać opcję Najszybsze lub Optymalne.

    • Najszybsza: operacja kompresji powinna zostać ukończona tak szybko, jak to możliwe, nawet jeśli wynikowy plik nie jest optymalnie skompresowany.

    • Optymalna: operacja kompresji powinna być optymalnie skompresowana, nawet jeśli operacja trwa dłużej. Aby uzyskać więcej informacji, przejdź do artykułu Poziom kompresji.

  • Kodowanie: określ typ kodowania używany do odczytywania plików testowych. Wybierz jeden typ z listy rozwijanej. Wartość domyślna to UTF-8.

Format JSON jako miejsce docelowe

Po wybraniu pozycji Ustawienia zostaną wyświetlone następujące właściwości w wyskakującym oknie dialogowym Ustawienia formatu pliku.

Zrzut ekranu przedstawiający miejsce docelowe formatu pliku JSON.

  • Typ kompresji: wybierz koder-dekoder kompresji używany do zapisywania plików JSON na liście rozwijanej. Możesz wybrać spośród opcji Brak, bzip2, gzip, deflate, ZipDeflate, TarGzip lub tar.

  • Poziom kompresji: współczynnik kompresji. Możesz wybrać jedną z opcji Optymalna lub Najszybsza.

    • Najszybsza: operacja kompresji powinna zostać ukończona tak szybko, jak to możliwe, nawet jeśli wynikowy plik nie jest optymalnie skompresowany.

    • Optymalna: operacja kompresji powinna być optymalnie skompresowana, nawet jeśli operacja trwa dłużej. Aby uzyskać więcej informacji, przejdź do artykułu Poziom kompresji.

  • Kodowanie: określ typ kodowania używany do pisania plików testowych. Wybierz jeden typ z listy rozwijanej. Wartość domyślna to UTF-8.

W obszarze Ustawienia zaawansowane na karcie Miejsce docelowe zostaną wyświetlone następujące właściwości powiązane z formatem JSON.

  • Wzorzec pliku: określ wzorzec danych przechowywanych w każdym pliku JSON. Dozwolone wartości to: Zestaw obiektów (linie JSON) i Tablica obiektów. Wartość domyślna to Zestaw obiektów. Aby uzyskać szczegółowe informacje o tych wzorcach, zobacz sekcję Wzorce plików JSON.

Wzorce plików JSON

Podczas kopiowania danych z plików JSON działanie kopiowania może automatycznie wykrywać i analizować następujące wzorce plików JSON. Podczas zapisywania danych w plikach JSON można skonfigurować wzorzec pliku w miejscu docelowym działania kopiowania.

  • Typ I: setOfObjects

    Każdy plik zawiera pojedynczy obiekt, linie JSON lub obiekty łączone.

    • przykład kodu JSON z pojedynczym obiektem

      {
          "time": "2015-04-29T07:12:20.9100000Z",
          "callingimsi": "466920403025604",
          "callingnum1": "678948008",
          "callingnum2": "567834760",
          "switch1": "China",
          "switch2": "Germany"
      }
      
    • Linie JSON (ustawienie domyślne dla miejsca docelowego)

      {"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"}
      
    • przykład kodu JSON z obiektami połączonymi

      {
          "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"
      }
      
  • Typ II: arrayOfObjects

    Każdy plik zawiera tablicę obiektów.

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

Podsumowanie tabeli

Kod JSON jako źródło

Poniższe właściwości są obsługiwane w sekcji Źródło działania kopiowania w przypadku korzystania z formatu JSON.

Nazwa/nazwisko Opis Wartość Wymagania Właściwość skryptu JSON
Format pliku Format pliku, którego chcesz użyć. JSON Tak type (w obszarze datasetSettings):
Dane w formacie JSON
Typ kompresji Koder koder kompresji używany do odczytywania plików JSON. Wybierz spośród następujących:
Brak
bzip2
gzip
Deflate
ZipDeflate
TarGzip
smoła
Nie. type (w obszarze compression):

bzip2
gzip
Deflate
ZipDeflate
TarGzip
smoła
Poziom kompresji Współczynnik kompresji. Najszybszy
Optymalny
Nie. poziom (w obszarze compression):
Najszybszy
Optymalny
Kodowanie Typ kodowania używany do odczytywania plików testowych. "UTF-8" (domyślnie),"UTF-8 bez 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", "IBM737", "IBM775", "IBM850", "IBM852", "IBM855", "IBM857", "IBM860", "IBM861", "IBM863", "IBM864", "IBM865", "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-1255"2", "WINDOWS-1253", "WINDOWS-1254", "WINDOWS-1255", "WINDOWS-1256", "WINDOWS-1257", "WINDOWS-1258" Nie encodingName
Zachowaj nazwę pliku zip jako folder Wskazuje, czy podczas kopiowania zachować nazwę źródłowego pliku zip jako strukturę folderów. Wybrane (domyślne) lub usuń zaznaczenie Nie. preserveZipFileNameAsFolder
(w obszarze compressionProperties->type as ZipDeflateReadSettings):
true (wartość domyślna) lub fałsz
Zachowaj nazwę pliku kompresji jako folder Wskazuje, czy podczas kopiowania zachować nazwę skompresowanego pliku źródłowego jako strukturę folderów. Wybrane (domyślne) lub usuń zaznaczenie Nie. preserveCompressionFileNameAsFolder
(w obszarze compressionProperties->type jako TarGZipReadSettings lub TarReadSettings):
true (wartość domyślna) lub fałsz

Kod JSON jako miejsce docelowe

Poniższe właściwości są obsługiwane w sekcji Miejsce docelowe działania kopiowania w przypadku korzystania z formatu JSON.

Nazwa/nazwisko Opis Wartość Wymagania Właściwość skryptu JSON
Format pliku Format pliku, którego chcesz użyć. JSON Tak type (w obszarze datasetSettings):
Dane w formacie JSON
Typ kompresji Koder koder kompresji używany do pisania plików JSON. Wybierz spośród następujących:
Brak
bzip2
gzip
Deflate
ZipDeflate
TarGzip
smoła
Nie. type (w obszarze compression):

bzip2
gzip
Deflate
ZipDeflate
TarGzip
smoła
Poziom kompresji Współczynnik kompresji. Najszybszy
Optymalny
Nie. poziom (w obszarze compression):
Najszybszy
Optymalny
Kodowanie Typ kodowania używany do pisania plików testowych. "UTF-8" (domyślnie),"UTF-8 bez 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", "IBM737", "IBM775", "IBM850", "IBM852", "IBM855", "IBM857", "IBM860", "IBM861", "IBM863", "IBM864", "IBM865", "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-1255"2", "WINDOWS-1253", "WINDOWS-1254", "WINDOWS-1255", "WINDOWS-1256", "WINDOWS-1257", "WINDOWS-1258" Nie encodingName
Wzorzec pliku Wskazuje wzorzec danych przechowywanych w każdym pliku JSON. Zestaw obiektów
Tablica obiektów
Nie. filePattern:
setOfObjects
arrayOfObjects