Compartilhar via


COPY INTO

Aplica-se a:marca de seleção positiva SQL do Databricks marca de seleção positiva Runtime do Databricks

Carrega dados de um local de arquivo em uma tabela Delta. Essa é uma operação que pode ser repetida e idempotente—os arquivos no local de origem que já foram carregados são ignorados. Isso é verdade mesmo que os arquivos tenham sido modificados desde que foram carregados. Para obter exemplos, consulte Padrões comuns de carregamento de dados usando COPY INTO.

Sintaxe

COPY INTO target_table [ BY POSITION | ( col_name [ , <col_name> ... ] ) ]
  FROM { source_clause |
         ( SELECT expression_list FROM source_clause ) }
  FILEFORMAT = data_source
  [ VALIDATE [ ALL | num_rows ROWS ] ]
  [ FILES = ( file_name [, ...] ) | PATTERN = glob_pattern ]
  [ FORMAT_OPTIONS ( { data_source_reader_option = value } [, ...] ) ]
  [ COPY_OPTIONS ( { copy_option = value } [, ...] ) ]

source_clause
  source [ WITH ( [ CREDENTIAL { credential_name |
                                 (temporary_credential_options) } ]
                  [ ENCRYPTION (encryption_options) ] ) ]

Parâmetros

  • target_table

    Identifica uma tabela do Delta existente. O target_table não deve incluir uma especificação temporal ou especificação de opções.

    Se o nome da tabela for fornecido na forma de um local, como: delta.`/path/to/table` , o Catálogo do Unity poderá controlar o acesso aos locais aos quais estão sendo gravados. Você pode gravar em um local externo:

    • Definindo o local como um local externo e tendo permissões WRITE FILES nesse local externo.
    • Ter permissões WRITE FILES em uma credencial de armazenamento nomeada que fornecem autorização para gravar em um local usando: COPY INTO delta.`/some/location` WITH (CREDENTIAL <named-credential>)

    Consulte Conectar-se ao armazenamento de objetos e serviços na nuvem usando o Catálogo do Unity para obter mais detalhes.

  • BY POSITION | ( col_name [ , <col_name> … ] )

    Corresponde as colunas de origem a colunas de tabela de destino por posição ordinal. A conversão de tipo das colunas correspondentes é feita automaticamente.

    Esse parâmetro só tem suporte para o formato de arquivo CSV sem cabeçalho. É preciso especificar FILEFORMAT = CSV. FORMAT_OPTIONS também deve ser definido como ("headers" = "false") (FORMAT_OPTIONS ("headers" = "false") é o padrão).

    Opção de sintaxe 1: BY POSITION

    • Corresponde as colunas de origem a colunas de tabela de destino por posição ordinal automaticamente.
      • A correspondência de nome padrão não é usada para correspondência.
      • As colunas IDENTITY e GENERATED da tabela de destino são ignoradas ao corresponder às colunas de origem.
      • Se o número de colunas de origem não for igual às colunas de tabela de destino filtradas, COPY INTO gerará um erro.

    Opção de sintaxe 2: ( col_name [ , <col_name> ... ] )

    • Corresponde as colunas de origem às colunas de tabela de destino especificadas por posição ordinal relativa usando uma lista de nomes de coluna de tabela de destino entre parênteses, separadas por vírgula.
      • Os nomes de coluna e ordem da coluna da tabela original não são usados para correspondência.
      • As colunas IDENTITY e GENERATED não podem ser especificadas na lista de nomes de coluna, caso contrário, COPY INTO gerará um erro.
      • As colunas especificadas não podem ser duplicadas.
      • Quando o número de colunas de origem não é igual às colunas de tabela especificadas, COPY INTO gera um erro.
      • Para as colunas que não são especificadas na lista de nomes de coluna, COPY INTO atribui valores padrão, se houver. Caso contrário, atribui NULL. Se qualquer coluna não for anulável, COPY INTO gerará um erro.
  • source

    O local do arquivo do qual os dados são carregados. Os arquivos neste local devem ter o formato especificado em FILEFORMAT. O local é fornecido na forma de uma URI.

    O acesso ao local de origem pode ser fornecido por meio de:

    • credential_name

      Nome opcional da credencial usada para acessar ou gravar no local de armazenamento. Você usará essa credencial somente se o local do arquivo não estiver incluído em um local externo. Confira credential_name.

    • Credenciais temporárias embutidas.

    • Definindo o local de origem como um local externo e tendo permissões READ FILES no local externo por meio do Catálogo do Unity.

    • Usando uma credencial de armazenamento nomeada com permissões READ FILES que fornecem autorização para leitura de um local por meio do Catálogo do Unity.

    Você não precisa fornecer credenciais embutidas ou nomeadas se o caminho já estiver definido como um local externo, que você tem permissões para usar. Consulte Criar um local externo para conectar o armazenamento em nuvem ao Azure Databricks para obter mais detalhes.

    Observação

    Se o caminho do arquivo de origem for um caminho raiz, adicione uma barra (/) no final do caminho do arquivo, por exemplo, s3://my-bucket/.

    As opções de credenciais aceitas são:

    • AZURE_SAS_TOKEN para ADLS Gen2 e Armazenamento de Blobs do Azure
    • AWS_ACCESS_KEY, AWS_SECRET_KEY e AWS_SESSION_TOKEN para AWS S3

    As opções de criptografia aceitas são:

    • TYPE = 'AWS_SSE_C' e MASTER_KEY para AWS S3

Confira Carregar dados usando COPY INTO com credenciais temporárias.

  • SELECT expression_list

    Seleciona as colunas ou expressões especificadas dos dados de origem antes de copiar para a tabela Delta. As expressões podem ser qualquer coisa que você use com instruções SELECT, incluindo operações de janela. Você pode usar expressões de agregação somente para agregações globais – não é possível GROUP BY em colunas com essa sintaxe.

  • FILEFORMAT = data_source

    O formato dos arquivos de origem a serem carregados. Uma opção entre CSV, JSON, AVRO, ORC, PARQUET, TEXT e BINARYFILE.

  • VALIDATE

    Aplica-se a:verificação marcada como sim SQL do Databricks marca de seleção positiva Databricks Runtime 10.4 LTS e versões posteriores

    Os dados que serão carregados em uma tabela são validados, mas não gravados na tabela. Essas validações incluem:

    • Se os dados podem ser analisados.
    • Se o esquema corresponde ao da tabela ou se o esquema precisa ser desenvolvido.
    • Se todas as restrições de nulidade e verificação são atendidas.

    O padrão é validar todos os dados que devem ser carregados. Você pode fornecer um número de linhas a serem validadas com a palavra-chave ROWS, como VALIDATE 15 ROWS. A instrução COPY INTO retorna uma versão prévia dos dados de 50 linhas ou menos quando um número menor que 50 é usado com a palavra-chave ROWS).

  • FILES

    Uma lista de nomes de arquivos a serem carregados, com um limite de 1.000 arquivos. Não pode ser especificado com PATTERN.

  • PATTERN

    Um padrão glob que identifica os arquivos a serem carregados do diretório de origem. Não pode ser especificado com FILES.

    Padrão Descrição
    ? Corresponde a qualquer caractere único
    * Corresponde a zero ou mais caracteres
    [abc] Corresponde a um único caractere do conjunto de caracteres {a,b,c}.
    [a-z] Corresponde a um único caractere do intervalo de caracteres {a…z}.
    [^a] Corresponde a um único caractere que não é do conjunto de caracteres ou do intervalo {a}. Observe que o caractere ^ deve ocorrer imediatamente à direita do colchete de abertura.
    {ab,cd} Corresponde a uma cadeia de caracteres do conjunto de cadeias de caracteres {ab, cd}.
    {ab,c{de, fh}} Corresponde a uma cadeia de caracteres do conjunto de cadeias de caracteres {ab, cde, cfh}.
  • FORMAT_OPTIONS

    Opções a serem passadas para o leitor de fonte de dados Apache Spark para o formato especificado. Confira Opções de formato para cada formato de arquivo.

  • COPY_OPTIONS

    Opções para controlar a operação do comando COPY INTO.

    • force: booliano, padrão false. Se definido como true, a idempotência será desabilitada e os arquivos serão carregados, independentemente de terem sido carregados antes.
    • mergeSchema: booliano, padrão false. Se definido como true, o esquema pode ser desenvolvido de acordo com os dados de entrada.

Invocar COPY INTO simultaneamente

COPY INTO dá suporte a invocações simultâneas na mesma tabela. Desde que COPY INTO seja invocado simultaneamente em conjuntos distintos de arquivos de entrada, cada invocação deverá eventualmente ser bem-sucedida, caso contrário, você obterá um conflito de transação. COPY INTO não deve ser invocado simultaneamente para melhorar o desempenho; um único COPY INTO comando com vários arquivos normalmente tem um desempenho melhor do que executar comandos simultâneos COPY INTO com um único arquivo cada. COPY INTO pode ser chamado simultaneamente quando:

  • Vários produtores de dados não têm uma maneira fácil de coordenar e não podem fazer uma única invocação.
  • Quando um diretório muito grande pode ser ingerido pelo subdiretório. Ao ingerir diretórios com um número muito grande de arquivos, o Databricks recomenda usar o Carregador Automático quando possível.

Acessar metadados de arquivo

Para saber como acessar metadados para fontes de dados baseadas em arquivo, confira Coluna de metadados do arquivo.

Opções de formato

Opções genéricas

As opções a seguir se aplicam a todos os formatos de arquivo.

Opção
ignoreCorruptFiles

Digite: Boolean

Se os arquivos corrompidos devem ser ignorados. Se for verdade, os trabalhos do Spark continuarão a ser executados ao encontrar arquivos corrompidos e o conteúdo lido ainda será retornado. Observável como numSkippedCorruptFiles no
operationMetrics coluna de histórico do Delta Lake. Disponível no Databricks Runtime 11.3 LTS e versões superiores.

Valor padrão: false
ignoreMissingFiles

Digite: Boolean

Se deve ignorar arquivos ausentes. Se for verdade, os trabalhos do Spark continuarão a ser executados ao encontrar arquivos ausentes e o conteúdo lido ainda será retornado. Disponível no Databricks Runtime 11.3 LTS e versões superiores.

Valor padrão: false (true para COPY INTO)
modifiedAfter

Digite: Timestamp String, por exemplo, 2021-01-01 00:00:00.000000 UTC+0

Um carimbo de data/hora opcional para ingerir arquivos que tenham um carimbo de data/hora de modificação após o carimbo de data/hora fornecido.

Valor padrão: nenhum
modifiedBefore

Digite: Timestamp String, por exemplo, 2021-01-01 00:00:00.000000 UTC+0

Um carimbo de data/hora opcional para ingerir arquivos que tenham um carimbo de data/hora de modificação antes do carimbo de data/hora fornecido.

Valor padrão: nenhum
pathGlobFilter ou fileNamePattern

Digite: String

Um padrão glob potencial a ser fornecido para escolher arquivos. Equivalente a
PATTERN em COPY INTO. fileNamePattern pode ser usado em read_files.

Valor padrão: nenhum
recursiveFileLookup

Digite: Boolean

Se deve ignorar a inferência de partição durante a inferência de esquema. Isso não afeta quais arquivos são carregados.

Valor padrão: false

JSON options

Opção
allowBackslashEscapingAnyCharacter

Digite: Boolean

Se as barras invertidas devem ser permitidas para escapar qualquer caractere que tenha sucesso. Se não estiver habilitado, somente os caracteres listados explicitamente pela especificação JSON poderão ser ignorados.

Valor padrão: false
allowComments

Digite: Boolean

Se deseja permitir o uso de comentários de estilo Java, C e C++ (variedades '/', '*' e '//') no conteúdo analisado ou não.

Valor padrão: false
allowNonNumericNumbers

Digite: Boolean

Se o conjunto de tokens não-numéricos (NaN) deve ser permitido como valores de números flutuantes legais.

Valor padrão: true
allowNumericLeadingZeros

Digite: Boolean

Indica se os números integrais podem ser iniciados com zeros adicionais (ignoráveis) (por exemplo, 000001).

Valor padrão: false
allowSingleQuotes

Digite: Boolean

Se o uso de aspas simples (apóstrofo, caractere '\') deve ser permitido para cadeias de caracteres de cotação (nomes e valores de cadeia de caracteres).

Valor padrão: true
allowUnquotedControlChars

Digite: Boolean

Se as cadeias de caracteres JSON devem ser permitidas (caracteres ASCII com valor inferior a 32, incluindo caracteres de guia e de alimentação de linha) ou não.

Valor padrão: false
allowUnquotedFieldNames

Digite: Boolean

Se deseja permitir o uso de nomes de campo sem aspas (que são permitidos pelo JavaScript, mas não pela especificação JSON).

Valor padrão: false
badRecordsPath

Digite: String

O caminho para armazenar arquivos para registrar as informações sobre registros JSON inválidos.

Valor padrão: nenhum
columnNameOfCorruptRecord

Digite: String

A coluna para armazenar registros malformados e que não podem ser analisados. Se mode para análise for definida como DROPMALFORMED, essa coluna ficará vazia.

Valor padrão: _corrupt_record
dateFormat

Digite: String

O formato para analisar cadeias de caracteres de data.

Valor padrão: yyyy-MM-dd
dropFieldIfAllNull

Digite: Boolean

Se as colunas de todos os valores nulos ou matrizes e estruturas vazias devem ser ignoradas durante a inferência de esquema.

Valor padrão: false
encoding ou charset

Digite: String

O nome da codificação dos arquivos JSON. Confira java.nio.charset.Charset para obter uma lista de opções. Você não poderá usar UTF-16 e UTF-32 quando multiline for true.

Valor padrão: UTF-8
inferTimestamp

Digite: Boolean

Se deseja tentar e inferir as cadeias de carimbo de data/hora como um TimestampType. Quando definido como
true. A inferência de esquema poderá ser notavelmente mais longa. Você deve habilitar cloudFiles.inferColumnTypes o uso com o Carregador Automático.

Valor padrão: false
lineSep

Digite: String

Uma cadeia de caracteres entre dois registros JSON consecutivos.

Valor padrão: Nenhum, que abrange \r, \r\n e \n
locale

Digite: String

Um identificador java.util.Locale. Influencia a data padrão, carimbo de data/hora e análise decimal no JSON.

Valor padrão: US
mode

Digite: String

Modo analisador em torno do tratamento de registros malformados. Uma opção entre 'PERMISSIVE',
'DROPMALFORMED' ou 'FAILFAST'.

Valor padrão: PERMISSIVE
multiLine

Digite: Boolean

Se os registros JSON se estenderem por várias linhas.

Valor padrão: false
prefersDecimal

Digite: Boolean

Tenta inferir cadeias de caracteres como DecimalType em vez de flutuar ou tipo duplo quando possível. Você também deve usar a inferência de esquema, seja habilitando
inferSchema ou usando cloudFiles.inferColumnTypes com o Carregador Automático.

Valor padrão: false
primitivesAsString

Digite: Boolean

Se deve inferir tipos primitivos como números e boolianos como StringType.

Valor padrão: false
readerCaseSensitive

Digite: Boolean

Especifica o comportamento de confidencialidade de caso quando rescuedDataColumn está habilitado. Se for verdadeiro, salve as colunas de dados cujos nomes diferem por caso do esquema; caso contrário, leia os dados de maneira que não diferencia maiúsculas de minúsculas. Disponível no Databricks Runtime
13.3 e superior.

Valor padrão: true
rescuedDataColumn

Digite: String

É necessário coletar todos os dados que não podem ser analisados ​​devido a uma incompatibilidade de tipo de dados ou incompatibilidade de esquema (incluindo maiúsculas e minúsculas) em uma coluna separada. Essa coluna é incluída por padrão ao usar o Carregador Automático. Para obter mais detalhes, confira Qual é a coluna dados resgatados?.

Valor padrão: nenhum
singleVariantColumn

Digite: String

Se deve-se ingerir todo o documento JSON, analisado em uma única coluna Variante com a cadeia de caracteres fornecida como o nome da coluna. Se desabilitado, os campos JSON serão ingeridos em suas próprias colunas.

Valor padrão: nenhum
timestampFormat

Digite: String

O formato para análise de cadeias de caracteres de data/hora.

Valor padrão: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone

Digite: String

O java.time.ZoneId a ser usado ao analisar carimbo de data/hora e datas.

Valor padrão: nenhum

CSV options

Opção
badRecordsPath

Digite: String

O caminho para armazenar arquivos para registrar as informações sobre registros CSV incorretos.

Valor padrão: nenhum
charToEscapeQuoteEscaping

Digite: Char

O caractere usado para escapar o caractere usado para escapar aspas. Por exemplo, para o seguinte registro: [ " a\\", b ]:

- Se o caractere a ser ignorado '\' for indefinido, o registro não será analisado. O analisador lerá caracteres: [a],[\],["],[,],[ ],[b] e lançará um erro porque não consegue encontrar uma aspas de fechamento.
- Se o caractere para escapar do '\' for definido como '\', o registro será lido com dois valores: [a\] e [b].

Valor padrão: '\0'
columnNameOfCorruptRecord

Com suporte para Carregador Automático. Sem suporte para COPY INTO.

Digite: String

A coluna para armazenar registros malformados e que não podem ser analisados. Se mode para análise for definida como DROPMALFORMED, essa coluna ficará vazia.

Valor padrão: _corrupt_record
comment

Digite: Char

Define o caractere que representa um comentário de linha quando encontrado no início de uma linha de texto. Use '\0' para desabilitar o ato de ignorar comentários.

Valor padrão: '\u0000'
dateFormat

Digite: String

O formato para analisar cadeias de caracteres de data.

Valor padrão: yyyy-MM-dd
emptyValue

Digite: String

Representação de cadeia de caracteres de um valor vazio.

Valor padrão: ""
encoding ou charset

Digite: String

O nome da codificação dos arquivos CSV. Confira java.nio.charset.Charset para obter a lista de opções. UTF-16 e UTF-32 não poderão ser usados quando multiline for true.

Valor padrão: UTF-8
enforceSchema

Digite: Boolean

Se deve aplicar à força o esquema especificado ou inferido aos arquivos CSV. Se a opção estiver habilitada, os cabeçalhos de arquivos CSV serão ignorados. Essa opção será ignorada por padrão ao usar o Carregador Automático para resgatar dados e permitir a evolução do esquema.

Valor padrão: true
escape

Digite: Char

O caractere de escape a ser usado ao analisar os dados.

Valor padrão: '\'
header

Digite: Boolean

Se os arquivos CSV contiverem um cabeçalho. O Carregador Automático presume que os arquivos tenham cabeçalhos ao inferir o esquema.

Valor padrão: false
ignoreLeadingWhiteSpace

Digite: Boolean

Se deve ignorar espaços em branco à frente para cada valor analisado.

Valor padrão: false
ignoreTrailingWhiteSpace

Digite: Boolean

Se deve ignorar espaços em branco à parte final para cada valor analisado.

Valor padrão: false
inferSchema

Digite: Boolean

Se inferir os tipos de dados dos registros CSV analisados ou assumir que todas as colunas são de StringType. Requer uma passagem adicional dos dados se definido como true. Para o Carregador Automático, use cloudFiles.inferColumnTypes em vez disso.

Valor padrão: false
lineSep

Digite: String

Uma cadeia de caracteres entre dois registros CSV consecutivos.

Valor padrão: Nenhum, que abrange \r, \r\n e \n
locale

Digite: String

Um identificador java.util.Locale. Influencia a data padrão, o carimbo de data/hora e a análise decimal dentro do CSV.

Valor padrão: US
maxCharsPerColumn

Digite: Int

Número máximo de caracteres esperados de um valor a ser analisado. Pode ser usado para evitar erros de memória. O padrão é -1, que significa ilimitado.

Valor padrão: -1
maxColumns

Digite: Int

O limite rígido de quantas colunas um registro pode ter.

Valor padrão: 20480
mergeSchema

Digite: Boolean

Se deve inferir o esquema em vários arquivos e mesclar o esquema de cada arquivo. Habilitado por padrão para o Carregador Automático ao inferir o esquema.

Valor padrão: false
mode

Digite: String

Modo analisador em torno do tratamento de registros malformados. Uma opção entre 'PERMISSIVE',
'DROPMALFORMED' e 'FAILFAST'.

Valor padrão: PERMISSIVE
multiLine

Digite: Boolean

Se os registros CSV se estenderem por várias linhas.

Valor padrão: false
nanValue

Digite: String

A representação de cadeia de caracteres de um valor que não é um número ao analisar as colunas FloatType e DoubleType.

Valor padrão: "NaN"
negativeInf

Digite: String

A representação de cadeia de caracteres de infinito negativo ao analisar as colunas FloatType ou DoubleType.

Valor padrão: "-Inf"
nullValue

Digite: String

Representação de cadeia de caracteres de um valor nulo.

Valor padrão: ""
parserCaseSensitive (preterido)

Digite: Boolean

Durante a leitura de arquivos, se as colunas declaradas no cabeçalho devem ser alinhadas com o caso de esquema de forma sensível. Isso é true por padrão para o Carregador Automático. As colunas que diferirem por caso serão resgatadas no rescuedDataColumn, se habilitado. Essa opção foi preterida em favor de readerCaseSensitive.

Valor padrão: false
positiveInf

Digite: String

A representação de cadeia de caracteres de infinito positivo ao analisar as colunas FloatType ou DoubleType.

Valor padrão: "Inf"
preferDate

Digite: Boolean

Tenta inferir cadeias de caracteres como datas em vez de carimbo de data/hora quando possível. Você também deve usar a inferência de esquema, habilitando inferSchema ou usando
cloudFiles.inferColumnTypes com o Carregador Automático.

Valor padrão: true
quote

Digite: Char

O caractere usado para escapar valores em que o delimitador de campo faz parte do valor.

Valor padrão: "
readerCaseSensitive

Digite: Boolean

Especifica o comportamento de confidencialidade de caso quando rescuedDataColumn está habilitado. Se for verdadeiro, salve as colunas de dados cujos nomes diferem por caso do esquema; caso contrário, leia os dados de maneira que não diferencia maiúsculas de minúsculas.

Valor padrão: true
rescuedDataColumn

Digite: String

É necessário coletar todos os dados que não podem ser analisados ​​devido a uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo maiúsculas e minúsculas) em uma coluna separada. Essa coluna é incluída por padrão ao usar o Carregador Automático. Para obter mais detalhes, confira Qual é a coluna dados resgatados?.

Valor padrão: nenhum
sep ou delimiter

Digite: String

A cadeia de caracteres do separador entre colunas.

Valor padrão: ","
skipRows

Digite: Int

O número de linhas desde o início do arquivo CSV que devem ser ignoradas (incluindo linhas com comentários e vazias). Se header for verdadeiro, o cabeçalho será a primeira linha não mapeada e descompactada.

Valor padrão: 0
timestampFormat

Digite: String

O formato para análise de cadeias de caracteres de data/hora.

Valor padrão: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]
timeZone

Digite: String

O java.time.ZoneId a ser usado ao analisar carimbo de data/hora e datas.

Valor padrão: nenhum
unescapedQuoteHandling

Digite: String

A estratégia para lidar com aspas sem saída. Opções permitidas:

- STOP_AT_CLOSING_QUOTE: se aspas sem escape forem encontradas na entrada, acumular o caractere de aspas e continuar analisando o valor como um valor entre aspas, até que uma aspa de fechamento seja encontrada.
- BACK_TO_DELIMITER: se forem encontradas aspas sem escape na entrada, considere o valor como um valor sem aspas. Isso fará com que o analisador acumule todos os caracteres do valor atual analisado até que o delimitador definido por sep seja encontrado. Se nenhum delimitador for encontrado no valor, o analisador continuará acumulando caracteres da entrada até que um delimitador ou uma terminação de linha seja encontrada.
- STOP_AT_DELIMITER: se forem encontradas aspas sem escape na entrada, considere o valor como um valor sem aspas. Isso fará com que o analisador acumule todos os caracteres até que o delimitador definido por sep ou uma terminação de linha seja encontrado na entrada.
- SKIP_VALUE: se forem encontradas aspas sem escape na entrada, o conteúdo analisado para o valor determinado será ignorado (até que o próximo delimitador seja encontrado) e, em vez disso, será produzido o valor definido em nullValue.
- RAISE_ERROR: se forem encontradas aspas sem escape na entrada, uma
TextParsingException será lançada.

Valor padrão: STOP_AT_DELIMITER

XML options

Opção Descrição Escopo
rowTag A marca de linha dos arquivos XML a serem tratadas como uma linha. No exemplo o XML <books> <book><book>...<books>, o valor apropriado é book. Trata-se de uma opção obrigatória. read
samplingRatio Define uma fração de linhas usadas para inferência de esquema. As funções internas do XML ignoram essa opção. Padrão: 1.0. read
excludeAttribute Se deve excluir os atributos em elementos. Padrão: false. read
mode Modo para lidar com registros corrompidos durante a análise.

PERMISSIVE: para registros corrompidos, coloca a cadeia de caracteres malformada em um campo configurado por columnNameOfCorruptRecord e define os campos malformados como null. Para manter os registros corrompidos, é possível definir um campo do tipo string denominado columnNameOfCorruptRecord em um esquema definido pelo usuário. Se um esquema não tiver o campo, os registros corrompidos serão descartados durante a análise. Ao inferir um esquema, o analisador adiciona implicitamente um campo columnNameOfCorruptRecord em um esquema de saída.

DROPMALFORMED: ignora os registros corrompidos. Esse modo não dá suporte para funções internas de XML.

FAILFAST: gera uma exceção quando o analisador encontra registros corrompidos.
read
inferSchema Se true, tenta inferir um tipo apropriado para cada coluna DataFrame resultante. Se false, todas as colunas resultantes serão do tipo string. Padrão:
true. As funções internas do XML ignoram essa opção.
read
columnNameOfCorruptRecord Permite renomear o novo campo que contém uma cadeia de caracteres malformada criada pelo
modo PERMISSIVE. Padrão: spark.sql.columnNameOfCorruptRecord.
read
attributePrefix O prefixo de atributos para diferenciar atributos de elementos. Esse será o prefixo para nomes de campo. O padrão é _. Pode estar vazio para leitura de XML, mas não para gravação. leitura, gravação
valueTag A marca usada para os dados de caracteres dentro de elementos que também têm elementos de atributo(s) ou elemento(s) filho(s). O usuário pode especificar o campo valueTag no esquema ou ele será adicionado automaticamente durante a inferência do esquema quando os dados de caracteres estiverem presentes em elementos com outros elementos ou atributos. Padrão: _VALUE leitura,gravação
encoding Para leitura, decodifique os arquivos XML de acordo com o tipo de codificação fornecido. Para gravação, especifique a codificação (conjunto de caracteres) dos arquivos XML salvos. As funções internas do XML ignoram essa opção. Padrão: UTF-8. leitura, gravação
ignoreSurroundingSpaces Define se os espaços em branco ao redor dos valores que estão sendo lidos devem ser ignorados. Padrão: true. Os dados de caracteres somente com espaços em branco são ignorados. read
rowValidationXSDPath Caminho para um arquivo XSD opcional usado para validar o XML de cada linha individualmente. As linhas que não são validadas são tratadas como erros de análise, conforme mostrado acima. O XSD não afeta de outra forma o esquema fornecido ou inferido. read
ignoreNamespace Se true, os prefixos de namespaces em elementos e atributos XML serão ignorados. As marcas <abc:author> e <def:author>, por exemplo, são tratadas como se ambas fossem apenas <author>. Os namespaces não podem ser ignorados no elemento rowTag, somente em seus elementos filhos de leitura. A análise de XML não tem reconhecimento de namespace, mesmo se false. Padrão: false. read
timestampFormat Cadeia de caracteres do formato de carimbo de data/hora personalizado que segue o formato padrão datetime. Isso se aplica ao tipo timestamp. Padrão: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]. leitura, gravação
timestampNTZFormat Cadeia de caracteres de formato personalizado para carimbo de data/hora sem fuso horário que segue o formato padrão datetime. Isso se aplica ao tipo TimestampNTZType. Padrão:
yyyy-MM-dd'T'HH:mm:ss[.SSS]
leitura, gravação
dateFormat Cadeia de caracteres de formato de data personalizada que segue o formato padrão datetime. Isso se aplica ao tipo de data. Padrão: yyyy-MM-dd. leitura, gravação
locale Define uma localidade como uma marca de idioma no formato IETF BCP 47. Por exemplo, locale é usado durante a análise de datas e carimbos de data/hora. Padrão: en-US. read
rootTag Marca raiz dos arquivos XML. Por exemplo, em <books> <book><book>...</books>, o valor apropriado é books. Você pode incluir atributos básicos especificando um valor como books foo="bar". Padrão: ROWS. write
declaration Conteúdo da declaração XML a ser gravada no início de cada arquivo XML de saída, antes de rootTag. Por exemplo, um valor de foo faz com que <?xml foo?> seja gravado. Defina como uma cadeia de caracteres vazia para suprimir. Padrão: version="1.0"
encoding="UTF-8" standalone="yes".
write
arrayElementName Nome do elemento XML que envolve cada elemento de uma coluna com valor de matriz durante a gravação. Padrão: item. write
nullValue Define a representação em cadeia de caracteres de um valor nulo. Padrão: cadeia de caracteres null. Quando esse valor é null, o analisador não escreve atributos e elementos para campos. leitura, gravação
compression Código de compactação a ser usado ao salvar no arquivo. Pode ser um dos nomes abreviados conhecidos que não diferenciam maiúsculas de minúsculas (none, bzip2, gzip,lz4, snappy, e
deflate). As funções internas do XML ignoram essa opção. Padrão: none.
write
validateName Se verdadeiro, gera um erro em caso de falha na validação do nome do elemento XML. Por exemplo, os nomes de campos SQL podem ter espaços, mas os nomes de elementos XML não podem. Padrão:
true.
write
readerCaseSensitive Especifica o comportamento da diferenciação de maiúsculas e minúsculas quando rescuedDataColumn está habilitado. Se for verdadeiro, salve as colunas de dados cujos nomes diferem por caso do esquema; caso contrário, leia os dados de maneira que não diferencia maiúsculas de minúsculas. Padrão: true. read
rescuedDataColumn Se todos os dados que não podem ser analisados devido a uma incompatibilidade de tipo de dados e de esquema (incluindo maiúsculas e minúsculas da coluna) devem ser coletados em uma coluna separada. Essa coluna é incluída por padrão ao usar o Carregador Automático. Para obter mais detalhes, confira O que é a coluna de dados resgatados?. Padrão: nenhum. read

PARQUET options

Opção
datetimeRebaseMode

Digite: String

Controla a nova base dos valores DATE e TIMESTAMP entre calendários Juliano e Gregoriano Proléptico. Valores permitidos: EXCEPTION, LEGACY e
CORRECTED.

Valor padrão: LEGACY
int96RebaseMode

Digite: String

Controla a nova base dos valores de carimbo de data/hora INT96 entre calendários Juliano e Gregoriano Proléptico. Valores permitidos: EXCEPTION, LEGACY e
CORRECTED.

Valor padrão: LEGACY
mergeSchema

Digite: Boolean

Se deve inferir o esquema em vários arquivos e mesclar o esquema de cada arquivo.

Valor padrão: false
readerCaseSensitive

Digite: Boolean

Especifica o comportamento de confidencialidade de caso quando rescuedDataColumn está habilitado. Se for verdadeiro, salve as colunas de dados cujos nomes diferem por caso do esquema; caso contrário, leia os dados de maneira que não diferencia maiúsculas de minúsculas.

Valor padrão: true
rescuedDataColumn

Digite: String

É necessário coletar todos os dados que não podem ser analisados ​​devido a uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo maiúsculas e minúsculas) em uma coluna separada. Essa coluna é incluída por padrão ao usar o Carregador Automático. Para obter mais detalhes, confira Qual é a coluna dados resgatados?.

Valor padrão: nenhum

AVRO options

Opção
avroSchema

Digite: String

Esquema opcional fornecido por um usuário no formato Avro. Ao ler Avro, essa opção pode ser definida como um esquema desenvolvido, que é compatível, mas diferente com o esquema Avro real. O esquema desserialização será consistente com o esquema desenvolvido. Por exemplo, se você definir um esquema desenvolvido contendo uma coluna adicional com um valor padrão, o resultado de leitura também conterá a nova coluna.

Valor padrão: nenhum
datetimeRebaseMode

Digite: String

Controla a nova base dos valores DATE e TIMESTAMP entre calendários Juliano e Gregoriano Proléptico. Valores permitidos: EXCEPTION, LEGACY e
CORRECTED.

Valor padrão: LEGACY
mergeSchema

Digite: Boolean

Se deve inferir o esquema em vários arquivos e mesclar o esquema de cada arquivo.
mergeSchema para Avro não flexibilizar tipos de dados.

Valor padrão: false
readerCaseSensitive

Digite: Boolean

Especifica o comportamento de confidencialidade de caso quando rescuedDataColumn está habilitado. Se for verdadeiro, salve as colunas de dados cujos nomes diferem por caso do esquema; caso contrário, leia os dados de maneira que não diferencia maiúsculas de minúsculas.

Valor padrão: true
rescuedDataColumn

Digite: String

É necessário coletar todos os dados que não podem ser analisados ​​devido a uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo maiúsculas e minúsculas) em uma coluna separada. Essa coluna é incluída por padrão ao usar o Carregador Automático. Para obter mais detalhes, confira Qual é a coluna dados resgatados?.

Valor padrão: nenhum

BINARYFILE options

Os arquivos binários não têm nenhuma opção de configuração adicional.

TEXT options

Opção
encoding

Digite: String

O nome da codificação dos arquivos TEXT. Confira java.nio.charset.Charset para obter uma lista de opções.

Valor padrão: UTF-8
lineSep

Digite: String

Uma cadeia de caracteres entre dois registros TEXT consecutivos.

Valor padrão: Nenhum, que abrange \r, \r\n e \n
wholeText

Digite: Boolean

Se um arquivo deve ser lido como um único registro.

Valor padrão: false

ORC options

Opção
mergeSchema

Digite: Boolean

Se deve inferir o esquema em vários arquivos e mesclar o esquema de cada arquivo.

Valor padrão: false