Formato JSON no Data Factory no Microsoft Fabric
Este artigo descreve como configurar o formato JSON no pipeline de dados do Data Factory no Microsoft Fabric.
Capacidades suportadas
O formato JSON é suportado para as seguintes atividades e conectores como origem e destino.
Categoria | Conector/Atividade |
---|---|
Conector suportado | Amazon S3 |
Compatível com Amazon S3 | |
Armazenamento de Blobs do Azure | |
Armazenamento do Azure Data Lake Ger1 | |
Azure Data Lake Storage Gen2 (Armazenamento do Azure Data Lake Gen2) | |
Ficheiros do Azure | |
Sistema de ficheiros | |
FTP | |
Google Cloud Storage | |
HTTP | |
Arquivos Lakehouse | |
Armazenamento em nuvem Oracle | |
SFTP | |
Atividade apoiada | Atividade de cópia (origem/destino) |
Atividade de Pesquisa | |
Atividade GetMetadata | |
Excluir atividade |
Formato JSON na atividade de cópia
Para configurar o formato JSON, escolha sua conexão na origem ou no destino da atividade de cópia do pipeline de dados e selecione JSON na lista suspensa de Formato de arquivo. Selecione Configurações para configuração adicional deste formato.
Formato JSON como origem
Depois de selecionar Configurações na seção Formato de arquivo , as seguintes propriedades são mostradas na caixa de diálogo pop-up Configurações de formato de arquivo.
Tipo de compactação: escolha o codec de compactação usado para ler arquivos JSON na lista suspensa. Você pode escolher entre Nenhum, bzip2, gzip, deflate, ZipDeflate, TarGzip ou alcatrão.
Se você selecionar ZipDeflate como o tipo de compactação, Preservar nome de arquivo zip como pasta será exibido nas Configurações avançadas na guia Origem .
- Preservar o nome do arquivo zip como pasta: indica se o nome do arquivo zip de origem deve ser preservado como uma estrutura de pasta durante a cópia.
- Se essa caixa estiver marcada (padrão), o serviço gravará arquivos descompactados em
<specified file path>/<folder named as source zip file>/
. - Se essa caixa estiver desmarcada, o serviço gravará arquivos descompactados diretamente no
<specified file path>
. Certifique-se de que não tem nomes de ficheiros duplicados em ficheiros zip de origem diferentes para evitar corridas ou comportamentos inesperados.
- Se essa caixa estiver marcada (padrão), o serviço gravará arquivos descompactados em
Se você selecionar TarGzip/tar como o tipo de compactação, Preservar nome do arquivo de compactação como pasta será exibido nas Configurações avançadas na guia Origem .
- Preservar o nome do arquivo de compactação como pasta: indica se o nome do arquivo compactado de origem deve ser preservado como uma estrutura de pasta durante a cópia.
- Se essa caixa estiver marcada (padrão), o serviço gravará arquivos descompactados em
<specified file path>/<folder named as source compressed file>/
. - Se essa caixa estiver desmarcada, o serviço grava arquivos descompactados diretamente no
<specified file path>
. Certifique-se de que não tem nomes de ficheiro duplicados em ficheiros de origem diferentes para evitar corridas ou comportamentos inesperados.
- Se essa caixa estiver marcada (padrão), o serviço gravará arquivos descompactados em
- Preservar o nome do arquivo zip como pasta: indica se o nome do arquivo zip de origem deve ser preservado como uma estrutura de pasta durante a cópia.
Nível de compressão: A taxa de compressão. Você pode escolher entre Fastest ou Optimal.
Mais rápido: A operação de compressão deve ser concluída o mais rapidamente possível, mesmo que o ficheiro resultante não esteja comprimido da melhor forma.
Ideal: A operação de compressão deve ser compactada de forma ideal, mesmo que a operação demore mais tempo para ser concluída. Para obter mais informações, consulte o artigo Nível de compactação.
Codificação: especifique o tipo de codificação usado para ler arquivos de teste. Selecione um tipo na lista suspensa. O valor padrão é UTF-8.
Formato JSON como destino
Depois de selecionar Configurações, as seguintes propriedades são mostradas na caixa de diálogo pop-up Configurações de formato de arquivo.
Tipo de compactação: escolha o codec de compactação usado para gravar arquivos JSON na lista suspensa. Você pode escolher entre Nenhum, bzip2, gzip, deflate, ZipDeflate, TarGzip ou alcatrão.
Nível de compressão: A taxa de compressão. Você pode escolher entre Optimal ou Fastest.
Mais rápido: A operação de compressão deve ser concluída o mais rapidamente possível, mesmo que o ficheiro resultante não esteja comprimido da melhor forma.
Ideal: A operação de compressão deve ser compactada de forma ideal, mesmo que a operação demore mais tempo para ser concluída. Para obter mais informações, consulte o artigo Nível de compactação.
Codificação: especifique o tipo de codificação usado para gravar arquivos de teste. Selecione um tipo na lista suspensa. O valor padrão é UTF-8.
Em Configurações avançadas na guia Destino , as seguintes propriedades relacionadas ao formato JSON são exibidas.
- Padrão de arquivo: especifique o padrão de dados armazenados em cada arquivo JSON. Os valores permitidos são: set of objects (JSON Lines) e Array of objects. O valor padrão é set of objects. Veja a secção Padrões de ficheiro JSON para obter detalhes sobre estes padrões.
Padrões de ficheiro JSON
Ao copiar dados de arquivos JSON, a atividade de cópia pode detetar e analisar automaticamente os seguintes padrões de arquivos JSON. Ao gravar dados em arquivos JSON, você pode configurar o padrão de arquivo no destino da atividade de cópia.
Tipo I: setOfObjects
Cada arquivo contém um único objeto, linhas JSON ou objetos concatenados.
Exemplo de JSON de objeto único
{ "time": "2015-04-29T07:12:20.9100000Z", "callingimsi": "466920403025604", "callingnum1": "678948008", "callingnum2": "567834760", "switch1": "China", "switch2": "Germany" }
Linhas JSON (padrão para o 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"}
Exemplo 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 ficheiro contém uma 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" } ]
Resumo da tabela
JSON como fonte
As propriedades a seguir são suportadas na seção Fonte da atividade de cópia ao usar o formato JSON.
Nome | Descrição | valor | Necessário | Propriedade de script JSON |
---|---|---|---|---|
Formato do ficheiro | O formato de ficheiro que pretende utilizar. | JSON | Sim | tipo (em datasetSettings ):JSON |
Tipo de compressão | O codec de compressão usado para ler arquivos JSON. | Escolha entre: Nenhuma bzip2 gzip deflacionar ZipDeflate TarGzip alcatrão |
Não | tipo (em compression ): bzip2 gzip deflacionar ZipDeflate TarGzip alcatrão |
Nível de compressão | A taxa de compressão. | Mais rápido Ótimo |
Não | nível (em compression ): Mais rápido Ótimo |
Encoding (Codificação) | O tipo de codificação usado para ler arquivos de teste. | "UTF-8" (por padrão),"UTF-8 sem 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" | Não | encodingName |
Preservar o nome do arquivo zip como pasta | Indica se o nome do arquivo zip de origem deve ser preservado como uma estrutura de pastas durante a cópia. | Selecionado (padrão) ou desmarcado | Não | preserveZipFileNameAsFolder (em compressionProperties ->type como ZipDeflateReadSettings ):true (padrão) ou false |
Preservar o nome do arquivo de compactação como pasta | Indica se o nome do arquivo compactado de origem deve ser preservado como uma estrutura de pastas durante a cópia. | Selecionado (padrão) ou desmarcado | Não | preserveCompressionFileNameAsFolder (em compressionProperties ->type como TarGZipReadSettings ou TarReadSettings ):true (padrão) ou false |
JSON como destino
As propriedades a seguir são suportadas na seção Destino da atividade de cópia ao usar o formato JSON.
Nome | Descrição | valor | Necessário | Propriedade de script JSON |
---|---|---|---|---|
Formato do ficheiro | O formato de ficheiro que pretende utilizar. | JSON | Sim | tipo (em datasetSettings ):JSON |
Tipo de compressão | O codec de compressão usado para gravar arquivos JSON. | Escolha entre: Nenhuma bzip2 gzip deflacionar ZipDeflate TarGzip alcatrão |
Não | tipo (em compression ): bzip2 gzip deflacionar ZipDeflate TarGzip alcatrão |
Nível de compressão | A taxa de compressão. | Mais rápido Ótimo |
Não | nível (em compression ): Mais rápido Ótimo |
Encoding (Codificação) | O tipo de codificação usado para gravar arquivos de teste. | "UTF-8" (por padrão),"UTF-8 sem 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" | Não | encodingName |
Padrão de arquivo | Indica o padrão dos dados armazenados em cada ficheiro JSON. | Conjunto de objetos Matriz de objetos |
Não | filePattern: setOfObjects arrayOfObjects |