Formato JSON no Data Factory no Microsoft Fabric
Esse artigo descreve como configurar o formato JSON no pipeline de dados do Data Factory no Microsoft Fabric.
O formato JSON é compatível com as seguintes atividades e conectores como origem e destino.
Categoria | Conector/Atividade |
---|---|
Conector compatível | Amazon S3 |
Amazon S3 Compatible | |
Armazenamento de Blobs do Azure | |
Azure Data Lake Storage Gen1 | |
Azure Data Lake Storage Gen2 | |
Arquivos do Azure | |
Sistema de arquivos | |
FTP | |
Google Cloud Storage | |
HTTP | |
Arquivos do Lakehouse | |
Oracle Cloud Storage | |
SFTP | |
Atividade com suporte | atividade Copy (Origem/Destino) |
Atividade de pesquisa | |
Atividade GetMetadata | |
Excluir atividade |
Para configurar o formato JSON, escolha sua conexão na origem ou no destino da atividade de cópia do pipeline de dados e, em seguida, selecioneJSON na lista suspensa de Formato de arquivo. Selecione Configurações para configuração adicional desse formato.
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 os tipos None, bzip2, gzip, deflate, ZipDeflate, TarGzip ou tar.
Se você selecionar ZipDeflate como tipo de compactação, Preservar o nome do arquivo zip como pasta aparecerá em 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 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 em
<specified file path>
. Verifique se não há nomes de arquivo duplicados nos arquivos zip de origem diferentes para evitar a corrida ou comportamento inesperado.
- Se essa caixa estiver marcada (padrão), o serviço gravará arquivos descompactados em
Se você selecionar ZipDeflate como tipo de compactação, Preservar o nome do arquivo zip como pasta aparecerá em Configurações avançadas na guia Origem.
- Preservar o nome do arquivo compactado como pasta: indica se o nome do arquivo compactado de origem deve ser preservado como 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 gravará arquivos descompactados diretamente em
<specified file path>
. Verifique se não há nomes de arquivo duplicados nos arquivos de origem diferentes para evitar a corrida ou comportamento inesperado.
- 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 estrutura de pasta durante a cópia.
Nível de compactação: a taxa de compactação. Você pode escolher entre Mais Rápido ou Ideal.
Mais rápida: a operação de compactação deve ser concluída o mais rápido possível, mesmo se o arquivo resultante não for compactado da maneira ideal.
Ideal: a operação de compactação deve ser concluída da maneira ideal, mesmo se a operação demorar mais tempo para ser concluída. Para obter mais informações, acesse o artigoNível de Compactação .
Codificação: especifica o tipo de codificação usado para ler arquivos de teste. Selecione um tipo na lista suspensa. O valor padrão é UTF-8.
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 ler arquivos JSON na lista suspensa. Você pode escolher entre os tipos None, bzip2, gzip, deflate, ZipDeflate, TarGzip ou tar.
Nível de compactação: a taxa de compactação. Você pode escolher entre Ideal ou Mais Rápido.
Mais rápida: a operação de compactação deve ser concluída o mais rápido possível, mesmo se o arquivo resultante não for compactado da maneira ideal.
Ideal: a operação de compactação deve ser concluída da maneira ideal, mesmo se a operação demorar mais tempo para ser concluída. Para obter mais informações, acesse o artigoNível de Compactação .
Codificação: o tipo de codificação usado para gravar arquivos de teste. Selecione um tipo na lista suspensa. O valor padrão é UTF-8.
Nas 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: Conjunto de objetos (Linhas JSON) e Matriz de objetos. O valor padrão é definido como Conjunto de objetos. Veja a seção Padrões de arquivo JSON para obter detalhes sobre esses padrões.
Ao copiar dados de arquivos JSON, a atividade de cópia pode detectar e analisar automaticamente os padrões de arquivos JSON a seguir. 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 objeto único, 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 arquivo 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" } ]
As propriedades a seguir são compatíveis na seção Origem da atividade de cópia ao usar o formato JSON.
Nome | Descrição | Valor | Obrigatório | Propriedade de script JSON |
---|---|---|---|---|
Formato de arquivo | O formato de arquivo que você deseja usar. | JSON | Sim | tipo (em datasetSettings ):Json |
Tipo de compactação | O codec de compactação utilizado para ler arquivos JSON. | Escolha uma destas opções: Nenhuma bzip2 gzip deflate ZipDeflate TarGzip tar |
Não | tipo (em compression ):bzip2 gzip deflate ZipDeflate TarGzip tar |
Nível de compactação | A taxa de compactação. | Fastest Ideal |
Não | nível (em compression ):Fastest Ideal |
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" | Nenhum | encodingName |
Preservar o nome do arquivo zip como pasta | Indica se o nome do arquivo zip de origem deve ser preservado como estrutura de pastas durante a cópia. | Selecionado (padrão) ou não selecionado. | 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 zip de origem deve ser preservado como estrutura de pastas durante a cópia. | Selecionado (padrão) ou não selecionado. | Não | preserveCompressionFileNameAsFolder (em compressionProperties ->type como TarGZipReadSettings ou TarReadSettings ):true (padrão) ou false |
As propriedades a seguir são compatíveis na seção Destino da atividade de cópia ao usar o formato JSON.
Nome | Descrição | Valor | Obrigatório | Propriedade de script JSON |
---|---|---|---|---|
Formato de arquivo | O formato de arquivo que você deseja usar. | JSON | Sim | tipo (em datasetSettings ):Json |
Tipo de compactação | O codec de compactação utilizado para gravar arquivos JSON. | Escolha uma destas opções: Nenhuma bzip2 gzip deflate ZipDeflate TarGzip tar |
Não | tipo (em compression ):bzip2 gzip deflate ZipDeflate TarGzip tar |
Nível de compactação | A taxa de compactação. | Fastest Ideal |
Não | nível (em compression ):Fastest Ideal |
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" | Nenhum | encodingName |
Padrão do arquivo | Indique o padrão de dados armazenados em cada arquivo JSON. | Conjunto de objetos Matriz de objetos |
Não | filePattern: setOfObjects arrayOfObjects |