Formato JSON in Data Factory in Microsoft Fabric

Questo articolo illustra come configurare il formato JSON nella pipeline di dati di Data Factory in Microsoft Fabric.

Funzionalità supportate

Il formato JSON è supportato per le attività e i connettori seguenti come origine e destinazione.

Category Connessione or/attività
Connettore supportato Amazon S3
Archiviazione BLOB di Azure
Azure Data Lake Storage Gen1
Azure Data Lake Storage Gen2
FTP
Google Cloud Storage
HTTP
SFTP
Attività supportata attività Copy
Attività Lookup
Attività GetMetadata
Attività Delete

Formato JSON nell'attività di copia

Per configurare il formato JSON, scegliere la connessione nell'origine o nella destinazione dell'attività di copia della pipeline di dati e quindi selezionare JSON nell'elenco a discesa Formato file. Selezionare Impostazioni per ulteriori configurazioni di questo formato.

Screenshot showing file format settings.

Formato JSON come origine

Dopo aver selezionato Impostazioni nella sezione Formato file, nella finestra di dialogo Impostazioni formato file popup vengono visualizzate le proprietà seguenti.

Screenshot showing JSON file format source.

  • Tipo di compressione: scegliere il codec di compressione usato per leggere i file JSON nell'elenco a discesa. È possibile scegliere tra Nessuno, bzip2, gzip, deflate, ZipDeflate, TarGzip o tar.

    Se si seleziona ZipDeflate come tipo di compressione, mantenere il nome del file ZIP come cartella viene visualizzato nelle impostazioni avanzate nella scheda Origine .

    • Mantieni il nome del file ZIP come cartella: indica se mantenere il nome del file ZIP di origine come struttura di cartelle durante la copia.
      • Se questa casella è selezionata (impostazione predefinita), il servizio scrive i file decompressi in <specified file path>/<folder named as source zip file>/.
      • Se questa casella è deselezionata, il servizio scrive i file decompressi direttamente in <specified file path>. Assicurarsi di non avere nomi di file duplicati in file ZIP di origine diversi per evitare corse o comportamenti imprevisti.

    Se si seleziona TarGzip/tar come tipo di compressione, mantenere il nome del file di compressione come cartella viene visualizzato nelle impostazioni avanzate nella scheda Origine .

    • Mantieni il nome del file di compressione come cartella: indica se mantenere il nome del file compresso di origine come struttura di cartelle durante la copia.
      • Se questa casella è selezionata (impostazione predefinita), il servizio scrive i file decompressi in <specified file path>/<folder named as source compressed file>/.
      • Se questa casella è deselezionata, il servizio scrive i file decompressi direttamente in <specified file path>. Assicurarsi di non avere nomi di file duplicati in file di origine diversi per evitare corse o comportamenti imprevisti.
  • Livello di compressione: rapporto di compressione. È possibile scegliere tra Più veloce o Ottimale.

    • Più veloce: l'operazione di compressione deve essere completata il più rapidamente possibile, anche se il file risultante non è compresso in modo ottimale.

    • Optimal: l'operazione di compressione deve comprimere il file in modo ottimale, anche se il completamento richiede più tempo. Per altre informazioni, vedere l'articolo Livello di compressione.

  • Codifica: specificare il tipo di codifica usato per leggere i file di test. Selezionare un tipo dall'elenco a discesa. Il valore predefinito è UTF-8.

Formato JSON come destinazione

Dopo aver selezionato Impostazioni, nella finestra di dialogo Impostazioni formato file popup vengono visualizzate le proprietà seguenti.

Screenshot showing JSON file format destination.

  • Tipo di compressione: scegliere il codec di compressione usato per scrivere file JSON nell'elenco a discesa. È possibile scegliere tra Nessuno, bzip2, gzip, deflate, ZipDeflate, TarGzip o tar.

  • Livello di compressione: rapporto di compressione. È possibile scegliere tra Ottimale o Più veloce.

    • Più veloce: l'operazione di compressione deve essere completata il più rapidamente possibile, anche se il file risultante non è compresso in modo ottimale.

    • Optimal: l'operazione di compressione deve comprimere il file in modo ottimale, anche se il completamento richiede più tempo. Per altre informazioni, vedere l'articolo Livello di compressione.

  • Codifica: specificare il tipo di codifica usato per scrivere file di test. Selezionare un tipo dall'elenco a discesa. Il valore predefinito è UTF-8.

In Impostazioni avanzate nella scheda Destinazione vengono visualizzate le proprietà correlate al formato JSON seguenti.

  • Modello di file: specificare il modello di dati archiviati in ogni file JSON. I valori consentiti sono: Set di oggetti (righe JSON) e Matrice di oggetti. Il valore predefinito è Set di oggetti. Vedere la sezione Modelli di file JSON per i dettagli su questi modelli.

Modelli di file JSON

Quando si copiano dati da file JSON, l'attività di copia può rilevare e analizzare automaticamente i modelli seguenti di file JSON. Quando si scrivono dati in file JSON, è possibile configurare il modello di file nella destinazione dell'attività di copia.

  • Tipo I: setOfObjects

    Ogni file contiene un singolo oggetto, linee JSON o oggetti concatenati.

    • Esempio di JSON a oggetto singolo

      {
          "time": "2015-04-29T07:12:20.9100000Z",
          "callingimsi": "466920403025604",
          "callingnum1": "678948008",
          "callingnum2": "567834760",
          "switch1": "China",
          "switch2": "Germany"
      }
      
    • Righe JSON (impostazione predefinita per la destinazione)

      {"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"}
      
    • Esempio di JSON concatenati

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

    Ogni file contiene una matrice di oggetti.

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

Riepilogo tabella

JSON come origine

Le proprietà seguenti sono supportate nella sezione Origine dell'attività di copia quando si usa il formato JSON.

Nome Descrizione Valore Richiesto Proprietà script JSON
Formato file Formato di file che si desidera utilizzare. JSON type (in datasetSettings):
Json
Tipo di compressione Codec di compressione usato per leggere i file JSON. Scegliere tra:
Nessuno
bzip2
Gzip
Sgonfiare
ZipDeflate
TarGzip
Tar
No type (in compression):

bzip2
gzip
Sgonfiare
ZipDeflate
TarGzip
Tar
Livello di compressione Rapporto di compressione. Il più rapido
Ottimale
No livello (in compression):
Il più rapido
Ottimale
Encoding Tipo di codifica utilizzato per leggere i file di test. "UTF-8" (per impostazione predefinita),"UTF-8 without BOM", "UTF-16LE", "UTF-16BE", "UTF-32LE", "UTF-32BE", "US-ASCII", "UTF-7", "BIG"5", "EUC-JP", "EUC-KR", "GB2312", "GB18030", "JOHAB", "SHIFT-JIS", "CP875", "CP866", "IBM00858", "IBM037", "IBM273", "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-2", "ISO-8859-1"3", "ISO-8859-4", "ISO-8859-5", "ISO-8859-6", "ISO-8859-7", "ISO-8859-8859-8 " ISO-8859-9", "ISO-8859-13", "ISO-8859-15", "WINDOWS-874", "WINDOWS-1250", "WINDOWS-1250", "WINDOWS-1251", "WINDOWS-1252", "WINDOWS-1253", "WINDOWS-1254", "WINDOWS-1255", "WINDOWS-1256", "WINDOWS-1257", "WINDOWS-1258" No encodingName
Mantenere il nome del file ZIP come cartella Indica se mantenere il nome del file ZIP di origine come struttura di cartelle durante la copia. Selezionato (impostazione predefinita) o deselezionare No preserveZipFileNameAsFolder
(in compressionProperties->type come ZipDeflateReadSettings):
true (impostazione predefinita) o false
Mantenere il nome del file di compressione come cartella Indica se mantenere il nome del file compresso di origine come struttura di cartelle durante la copia. Selezionato (impostazione predefinita) o deselezionare No preserveCompressionFileNameAsFolder
(in compressionProperties->type come TarGZipReadSettings o TarReadSettings):
true (impostazione predefinita) o false

JSON come destinazione

Le proprietà seguenti sono supportate nella sezione Destinazione attività di copia quando si usa il formato JSON.

Nome Descrizione Valore Richiesto Proprietà script JSON
Formato file Formato di file che si desidera utilizzare. JSON type (in datasetSettings):
Json
Tipo di compressione Codec di compressione usato per scrivere file JSON. Scegliere tra:
Nessuno
bzip2
Gzip
Sgonfiare
ZipDeflate
TarGzip
Tar
No type (in compression):

bzip2
gzip
Sgonfiare
ZipDeflate
TarGzip
Tar
Livello di compressione Rapporto di compressione. Il più rapido
Ottimale
No livello (in compression):
Il più rapido
Ottimale
Encoding Tipo di codifica utilizzato per scrivere file di test. "UTF-8" (per impostazione predefinita),"UTF-8 without BOM", "UTF-16LE", "UTF-16BE", "UTF-32LE", "UTF-32BE", "US-ASCII", "UTF-7", "BIG"5", "EUC-JP", "EUC-KR", "GB2312", "GB18030", "JOHAB", "SHIFT-JIS", "CP875", "CP866", "IBM00858", "IBM037", "IBM273", "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-2", "ISO-8859-1"3", "ISO-8859-4", "ISO-8859-5", "ISO-8859-6", "ISO-8859-7", "ISO-8859-8859-8 " ISO-8859-9", "ISO-8859-13", "ISO-8859-15", "WINDOWS-874", "WINDOWS-1250", "WINDOWS-1250", "WINDOWS-1251", "WINDOWS-1252", "WINDOWS-1253", "WINDOWS-1254", "WINDOWS-1255", "WINDOWS-1256", "WINDOWS-1257", "WINDOWS-1258" No encodingName
Modello di file Indicare il modello dei dati archiviati in ogni file JSON. Set di oggetti
Matrice di oggetti
No filePattern:
setOfObjects
arrayOfObjects