Leggere in inglese

Condividi tramite


Formato JSON in Data Factory in Microsoft Fabric

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

Funzionalità supportate

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

Formato JSON nell'attività Copy

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

Screenshot che mostra le impostazioni del formato dei file.

Formato JSON come origine

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

Screenshot che mostra l'origine del formato di file JSON.

  • Tipo di compressione: scegliere il codec di compressione usato per leggere i file JSON nell'elenco a discesa. Scegliere tra i tipi None, bzip2, gzip, deflate, ZipDeflate, TarGzip oppure tar.

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

    • Mantenere il nome del file ZIP come cartella: indica se mantenere il nome del file ZIP di origine come struttura di una cartella durante la copia.
      • Se questa casella è spuntata (impostazione predefinita), il servizio scrive i file decompressi in <specified file path>/<folder named as source zip file>/.
      • Se questa casella non è spuntata, 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, nelle impostazioni Avanzate nella scheda Origine viene visualizzato Mantenere il nome del file di compressione come cartella.

    • Mantenere il nome del file di compressione come cartella: indica se mantenere il nome del file compresso di origine come struttura di una cartella durante la copia.
      • Se questa casella è spuntata (impostazione predefinita), il servizio scrive i file decompressi in <specified file path>/<folder named as source compressed file>/.
      • Se questa casella non è spuntata, 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 Fastest o Ottimale.

    • Fastest: l'operazione di compressione deve essere completata il più rapidamente possibile, anche se il file risultante non viene 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, si veda l'articolo Livello di compressione.

  • Codifica: specificare il tipo di codifica utilizzato 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, vengono visualizzate le proprietà seguenti nella finestra di dialogo Impostazioni formato file popup.

Screenshot che mostra la destinazione del formato di file JSON.

  • Tipo di compressione: scegliere il codec di compressione usato per scrivere i file JSON nell'elenco a discesa. Scegliere tra i tipi None, bzip2, gzip, deflate, ZipDeflate, TarGzip oppure tar.

  • Livello di compressione: rapporto di compressione. È possibile scegliere tra Ottimale o Fastest.

    • Fastest: l'operazione di compressione deve essere completata il più rapidamente possibile, anche se il file risultante non viene 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, si veda l'articolo Livello di compressione.

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

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

  • 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 è impostato 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à Copy può rilevare e analizzare automaticamente i modelli di file JSON seguenti. Quando si scrivono dati in file JSON, è possibile configurare il modello di file nella destinazione dell'attività Copy.

  • 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"
        }
    ]
    

Tabella riepilogativa

JSON come origine

Le seguenti proprietà sono supportate nella sezione Origine dell'attività Copy quando si utilizza il formato JSON.

Nome Descrizione valore Richiesto Proprietà script JSON
Formato di file Formato che si desidera usare. JSON tipo (in datasetSettings):
Json
Tipo di compressione Codec di compressione usato per leggere file JSON. Scegliere tra:
Nessuno
bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
No tipo (in compression):

bzip2
gzip
deflate
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 usato per leggere file di test. "UTF-8" (predefinito),"UTF-8 senza 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" No encodingName
Mantenere il nome del file ZIP come cartella Indica se mantenere il nome del file ZIP di origine come struttura di una cartella durante la copia. selezionato (impostazione predefinita) o deselezionato No preserveZipFileNameAsFolder
(in compressionProperties->type come ZipDeflateReadSettings):
true (valore predefinito) o false
Mantenere il nome del file di compressione come cartella Indica se mantenere il nome del file compresso di origine come struttura di una cartella durante la copia. selezionato (impostazione predefinita) o deselezionato No preserveCompressionFileNameAsFolder
(in compressionProperties->type come TarGZipReadSettings o TarReadSettings):
true (valore predefinito) o false

JSON come destinazione

Le seguenti proprietà sono supportate nella sezione Destinazione dell'attività Copy quando si utilizza il formato JSON.

Nome Descrizione valore Richiesto Proprietà script JSON
Formato di file Formato che si desidera usare. JSON tipo (in datasetSettings):
Json
Tipo di compressione Codec di compressione usato per scrivere file JSON. Scegliere tra:
Nessuno
bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
No tipo (in compression):

bzip2
gzip
deflate
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 usato per scrivere file di test. "UTF-8" (predefinito),"UTF-8 senza 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" No encodingName
Pattern di file Indicare il modello dei dati archiviati in ogni file JSON. Set di oggetti
Matrice di oggetti
No filePattern:
setOfObjects
arrayOfObjects