Fomato JSON en Data Factory en Microsoft Fabric

Este artículo describe cómo configurar el formato JSON en la canalización de datos de Data Factory en Microsoft Fabric.

Funcionalidades admitidas

El formato JSON es compatible con las siguientes actividades y conectores como origen y destino.

Category Conector/Actividad
Conector compatible Amazon S3
Azure Blob Storage
Azure Data Lake Storage Gen1
Azure Data Lake Storage Gen2
FTP
Google Cloud Storage
HTTP
SFTP
Actividad compatible Actividad de copia
Actividad de búsqueda
Actividad GetMetadata
Actividad de eliminación

Formato JSON en la actividad de copia

Para configurar el formato JSON, elija la conexión en el origen o destino de la actividad de copia de la canalización de datos y, a continuación, seleccione JSON en la lista desplegable de Formato de archivo. Seleccione Configuración para una configuración adicional de este formato.

Screenshot showing file format settings.

Formato JSON como origen

Después de seleccionar Configuración en la sección Formato de archivo , se muestran las siguientes propiedades en el cuadro de diálogo emergente Configuración de formato de archivo .

Screenshot showing JSON file format source.

  • Tipo de compresión : elija el códec de compresión utilizado para leer los archivos JSON en la lista desplegable. Puede elegir entre los tipos None, bzip2, gzip, deflate, ZipDeflate , TarGzip o tar.

    Si selecciona ZipDeflate como tipo de compresión, Conservar el nombre del archivo zip como carpeta aparecerá en la configuración Avanzada de la pestaña Origen.

    • Conservar el nombre del archivo zip como carpeta: Indica si se debe conservar el nombre del archivo zip de origen como estructura de carpetas durante la copia.
      • Si esta casilla está marcada (predeterminado), el servicio escribe los archivos descomprimidos en <specified file path>/<folder named as source zip file>/.
      • Si esta casilla no está marcada, el servicio escribe los archivos descomprimidos directamente en <specified file path>. Asegúrese de que no tenga nombres de archivo duplicados en distintos archivos ZIP de origen para evitar comportamientos acelerados o inesperados.

    Si selecciona TarGzip/tar como tipo de compresión, conservar el nombre del archivo de compresión como carpeta se muestra en la configuración avanzada de la pestaña Origen .

    • Conservar el nombre del archivo de compresión como carpeta: Indica si se debe conservar el nombre del archivo de compresión de origen como estructura de carpetas durante la copia.
      • Si esta casilla está marcada (predeterminado), el servicio escribe los archivos descomprimidos en <specified file path>/<folder named as source compressed file>/.
      • Si esta casilla no está marcada, el servicio escribe los archivos descomprimidos directamente en <specified file path>. Asegúrese de que no haya nombres de archivo duplicados en distintos archivos de origen para evitar comportamientos acelerados o inesperados.
  • Nivel de compresión: La relación de compresión. Puede elegir entre Más rápido u Óptimo.

    • Fastest: La operación de compresión debe completarse tan pronto como sea posible, incluso si el archivo resultante no se comprime de forma óptima.

    • Optimal: la operación de compresión se debe comprimir óptimamente, incluso si tarda más tiempo en completarse. Para más información, vaya al artículoNivel de compresión.

  • Codificación: especifique el tipo de codificación usado para leer/escribir archivos de prueba. Seleccione un tipo de la lista desplegable. El valor predeterminado es UTF-8.

Formato JSON como destino

Después de seleccionar Configuración, se muestran las siguientes propiedades en el cuadro de diálogo emergente Configuración de formato de archivo .

Screenshot showing JSON file format destination.

  • Tipo de compresión : elija el códec de compresión utilizado para escribir los archivos JSON en la lista desplegable. Puede elegir entre los tipos None, bzip2, gzip, deflate, ZipDeflate , TarGzip o tar.

  • Nivel de compresión: La relación de compresión. Puede elegir entre Óptimo o Más rápido.

    • Fastest: La operación de compresión debe completarse tan pronto como sea posible, incluso si el archivo resultante no se comprime de forma óptima.

    • Optimal: la operación de compresión se debe comprimir óptimamente, incluso si tarda más tiempo en completarse. Para más información, vaya al artículoNivel de compresión.

  • Codificación: el tipo de codificación usado para escribir archivos de prueba. Seleccione un tipo de la lista desplegable. El valor predeterminado es UTF-8.

En la configuración Avanzada de la pestaña Destino, se muestran las siguientes propiedades relacionadas con el formato JSON.

  • Patrón de archivos: especifique el patrón de los datos almacenados en cada archivo JSON. Los valores permitidos son: Conjunto de objetos (líneas JSON) y Matriz de objetos. El valor predeterminado se establece en Conjunto de objetos. Consulte la sección patrones de archivo JSON para obtener más información acerca de estos patrones.

Patrones de archivo JSON

Al copiar datos de archivos JSON, dicha actividad de copia puede detectar y analizar automáticamente los siguientes patrones de los archivos JSON. Al escribir datos en archivos JSON, puede configurar el patrón de archivo en el destino de la actividad de copia.

  • Tipo I: setOfObjects

    Cada archivo contiene un solo objeto, líneas JSON u objetos concatenados.

    • ejemplo de JSON de objeto único

      {
          "time": "2015-04-29T07:12:20.9100000Z",
          "callingimsi": "466920403025604",
          "callingnum1": "678948008",
          "callingnum2": "567834760",
          "switch1": "China",
          "switch2": "Germany"
      }
      
    • Líneas JSON (valor predeterminado para el destino)

      {"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"}
      
    • ejemplo de JSON concatenado

      {
          "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

    Cada archivo contiene una matriz de objetos.

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

Resumen de tabla

JSON como origen

Las siguientes propiedades se admiten en la sección Origen de la actividad de copia cuando se utiliza el formato JSON.

Nombre Descripción Value Obligatorio Propiedad de script JSON
Formato de archivo El formato de archivo que quiere usar. JSON tipo (en datasetSettings):
Json
Tipo de compresión El códec de compresión usado para leer archivos JSON. Elija entre las siguientes opciones:
None
bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
No tipo (en compression):

bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
Nivel de compresión La razón de compresión. Más rápida
Optimal
No nivel (en compression):
Más rápido
Óptimo
Encoding El tipo de codificación usado para leer archivos de prueba. "UTF-8" (de manera predeterminada),"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" No encodingName
Conservar el nombre del archivo ZIP como carpeta Indica si se debe conservar el nombre del archivo ZIP de origen como estructura de carpetas durante la copia. Seleccionado (predeterminado) o no seleccionado No preserveZipFileNameAsFolder
(en compressionProperties>type como ZipDeflateReadSettings):
true (valor predeterminado) o false
Conservar el nombre del archivo de compresión como carpeta Indica si, durante la copia, debe conservarse el nombre del archivo de origen comprimido como una estructura de carpetas. Seleccionado (predeterminado) o no seleccionado No preserveCompressionFileNameAsFolder
(en compressionProperties->type como TarGZipReadSettings o TarReadSettings):
true (valor predeterminado) o false

JSON como destino

Las siguientes propiedades se admiten en la sección Destino de la actividad de copia cuando se utiliza el formato JSON.

Nombre Descripción Value Obligatorio Propiedad de script JSON
Formato de archivo El formato de archivo que quiere usar. JSON tipo (en datasetSettings):
Json
Tipo de compresión El códec de compresión usado para leer y escribir archivos JSON. Elija entre las siguientes opciones:
None
bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
No tipo (en compression):

bzip2
gzip
deflate
ZipDeflate
TarGzip
tar
Nivel de compresión La razón de compresión. Más rápida
Optimal
No nivel (en compression):
Más rápido
Óptimo
Encoding El tipo de codificación usado para escribir archivos de prueba. "UTF-8" (de manera predeterminada),"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" No encodingName
Patrón de archivo Indica el patrón de los datos almacenados en cada archivo JSON. Conjunto de objetos
Matriz de objetos
No filePattern:
setOfObjects
arrayOfObjects