Opções do Auto Loader

As opções de configuração específicas para a origem do cloudFiles são prefixadas com cloudFiles de forma que estejam em um espaço de nome separado de outras opções de origem da transmissão estruturada.

Opções comuns do Auto Loader

Você pode configurar as seguintes opções para listagem de diretórios ou modo de notificação de arquivos.

Opção

cloudFiles.allowOverwrites

Tipo: Boolean

Se permitir que alterações no arquivo do diretório de entrada substituam os dados existentes.

Existem algumas advertências sobre a ativação desta configuração. Consulte as Perguntas frequentesAuto Loader para obter detalhes.

Valor default: false

cloudFiles.backfillInterval

Tipo: Interval String

O Auto Loader pode acionar preenchimentos assíncronos em um determinado intervalo, por exemplo 1 day para preencher uma vez por dia ou 1 week para preencher uma vez por semana. Os sistemas de notificação de eventos de ficheiros não garantem 100% de entrega de todos os ficheiros que foram upload , pelo que pode utilizar preenchimentos para garantir que todos os ficheiros serão eventualmente processados, disponíveis no Databricks Runtime 8.4 (sem suporte) e acima.

Valor default: Nenhum

cloudFiles.format

Tipo: String

O formato do arquivo de dados no caminho de origem. Os valores permitidos incluem:

Valor padrão: Nenhum (opção obrigatória)

cloudFiles.includeExistingFiles

Tipo: Boolean

Se os arquivos existentes devem ser incluídos no caminho de entrada do processamento da transmissão ou se devem ser processados somente os novos arquivos que chegarem após a configuração inicial. Essa opção é avaliada somente quando você inicia uma transmissão pela primeira vez. Alterar esta opção após reiniciar a transmissão não tem efeito.

Valor default: true

cloudFiles.inferColumnTypes

Tipo: Boolean

Se deve inferir os tipos exatos de coluna ao aproveitar a inferência de esquema. Por default, as colunas são inferidas como strings ao inferir datasets JSON e CSV. Consulte inferência de esquema para obter mais detalhes.

Valor default: false

cloudFiles.maxBytesPerTrigger

Tipo: Byte String

O número máximo de novos bytes a serem processados em cada gatilho. Você pode especificar uma string de bytes 10g para limitar cada microlote a 10 GB de dados. Esse é um máximo definido por software. Se você tiver arquivos de 3 GB cada, o Databricks processa 12 GB em um microlote. Quando usado em conjunto com cloudFiles.maxFilesPerTrigger, o Databricks consome até o limite mais baixo de cloudFiles.maxFilesPerTrigger ou cloudFiles.maxBytesPerTrigger, o que for alcançado primeiro. Essa opção não tem efeito quando usada com Trigger.Once() (descontinuada).

Valor default: Nenhum

cloudFiles.maxFileAge

Tipo: Interval String

Por quanto tempo um evento de arquivo é rastreado para fins de desduplicação. Databricks não recomenda ajustar esse parâmetro, a menos que você esteja ingerindo dados na ordem de milhões de arquivos por hora. Consulte a seção Retenção de eventos para obter mais detalhes.

Ajustar cloudFiles.maxFileAge de forma muito agressiva pode causar problemas de qualidade de dados, como ingestão duplicada ou arquivos ausentes. Portanto, a Databricks recomenda uma configuração conservadora para cloudFiles.maxFileAge, como 90 dias, que é semelhante ao recomendado por soluções de ingestão de dados comparáveis.

Valor default: Nenhum

cloudFiles.maxFilesPerTrigger

Tipo: Integer

O número máximo de novos arquivos a serem processados em cada gatilho. Quando usado junto com cloudFiles.maxBytesPerTrigger, o Databricks consome até o limite mais baixo de cloudFiles.maxFilesPerTrigger ou cloudFiles.maxBytesPerTrigger, o que for atingido primeiro. Essa opção não tem efeito quando usada com Trigger.Once() (descontinuada).

Valor padrão: 1000

cloudFiles.partitionColumns

Tipo: String

Uma lista separada por vírgulas de colunas de partição no estilo Hive que você gostaria de inferir da estrutura de diretórios dos arquivos. As colunas de partição no estilo Hive são valores- keypar combinados por um sinal de igualdade como <base-path>/a=x/b=1/c=y/file.format. Neste exemplo, as colunas de partição são a, b e c. Por default essas colunas serão adicionadas automaticamente ao seu esquema se você estiver usando a inferência de esquema e fornecer o <base-path> para carregar dados. Se você fornecer um esquema, o Auto Loader espera que essas colunas sejam incluídas no esquema. Se não quiser que essas colunas façam parte do seu esquema, você poderá especificar "" para ignorá-las. Além disso, você pode usar esta opção quando quiser que as colunas sejam inferidas do caminho do arquivo em estruturas de diretório complexas, como no exemplo abaixo:

<base-path>/year=2022/week=1/file1.csv <base-path>/year=2022/month=2/day=3/file2.csv <base-path>/year=2022/month=2/day=4/file3.csv

Especificar cloudFiles.partitionColumns como year,month,day retornará year=2022 para file1.csv, mas as colunas month e day serão null. month e day serão analisados corretamente para file2.csv e file3.csv.

Valor default: Nenhum

cloudFiles.schemaEvolutionMode

Tipo: String

O modo de evolução do esquema à medida que novas colunas são descobertas nos dados. Por default, as colunas são inferidas como strings ao inferir datasets JSON. Consulte evolução do esquema para obter mais detalhes.

Valor padrão: "addNewColumns" quando um esquema não é fornecido. Caso contrário, "none".

cloudFiles.schemaHints

Tipo: String

Informações do esquema que você fornece ao Auto Loader durante a inferência do esquema. Consulte as dicas de esquema para obter mais detalhes.

Valor default: Nenhum

cloudFiles.schemaLocation

Tipo: String

O local para armazenar o esquema inferido e as alterações subsequentes. Consulte inferência de esquema para obter mais detalhes.

Valor padrão: Nenhum (necessário ao inferir o esquema)

cloudFiles.useStrictGlobber

Tipo: Boolean

Se o senhor deve usar um globber estrito que corresponda ao comportamento de globbing de default de outras fontes de arquivos em Apache Spark. Consulte Padrões comuns de carregamento de dados para obter mais detalhes. Disponível em Databricks Runtime 12.2 LTS e acima.

Valor default: false

cloudFiles.validateOptions

Tipo: Boolean

Se deve validar as opções do Auto Loader e retornar um erro para opções desconhecidas ou inconsistentes.

Valor default: true

Opções de listagem de diretórios

As seguintes opções são relevantes para o modo de listagem de diretórios.

Opção

cloudFiles.useIncrementalListing (descontinuada)

Tipo: String

Este recurso foi descontinuado. A Databricks recomenda usar o modo de notificação de arquivo em vez de cloudFiles.useIncrementalListing.

Se deve ser usada a listagem incremental em vez da listagem completa no modo de listagem de diretórios. Por default, o Auto Loader faz o melhor esforço para detectar automaticamente se um determinado diretório é aplicável à listagem incremental. Você pode usar explicitamente a listagem incremental ou usar a listagem completa do diretório definindo-a como true ou false respectivamente.

A ativação incorreta da listagem incremental em um diretório ordenado não lexicalmente impede que o Auto Loader descubra novos arquivos.

Funciona com o Azure Data Lake Storage Gen2 (abfss://), S3 (s3://) e GCS (gs://).

Disponível no Databricks Runtime 9.1 LTS e acima.

Valor default: auto

Valores disponíveis: auto, true, false

Opções de notificação de arquivo

As seguintes opções são relevantes para o modo de notificação de arquivo.

Opção

cloudFiles.fetchParallelism

Tipo: Integer

Número de segmentos a serem usados ao buscar mensagens do serviço de enfileiramento.

Valor padrão: 1

cloudFiles.pathRewrites

Tipo: uma string JSON

Obrigatório somente se você especificar um queueUrl que receba notificações de arquivo de vários buckets S3 e quiser aproveitar os pontos de montagem configurados para acessar dados nesses contêineres. Use esta opção para reescrever o prefixo do caminho bucket/key com o ponto de montagem. Somente prefixos podem ser reescritos. Por exemplo, para a configuração {"<databricks-mounted-bucket>/path": "dbfs:/mnt/data-warehouse"}, o caminho s3://<databricks-mounted-bucket>/path/2017/08/fileA.json é reescrito para dbfs:/mnt/data-warehouse/2017/08/fileA.json.

Valor default: Nenhum

cloudFiles.resourceTag

Tipo: Map(String, String)

Uma série de pares de tags de valor chave para ajudar a associar e identificar recursos relacionados, por exemplo:

cloudFiles.option("cloudFiles.resourceTag.myFirstKey", "myFirstValue")     .option("cloudFiles.resourceTag.mySecondKey", "mySecondValue")

Para obter mais informações sobre a AWS, consulte Tags de alocação de custos do Amazon SQS e Configurando tags para um tópico do Amazon SNS. (1)

Para mais informações sobre o Azure, consulte Filas de Nomeação e Metadados e a cobertura de properties.labels em Inscrição de Evento. O Auto Loader armazena esses pares de tags de valor- keyem JSON como rótulo. (1)

Para obter mais informações sobre o GCP, consulte Relatórios de uso com rótulos. (1)

Valor default: Nenhum

cloudFiles.useNotifications

Tipo: Boolean

Se você deve usar o modo de notificação de arquivo para determinar quando há novos arquivos. Se false, utilize o modo de listagem de diretórios. Consulte Como funciona o Auto Loader.

Valor default: false

(1) O Auto Loader adiciona os seguintes pares de tags de chave-valor por padrão com base no melhor esforço:

  • vendor: Databricks

  • path: O local de onde os dados são carregados. Indisponível no GCP devido a limitações de rotulagem.

  • checkpointLocation: A localização do ponto de verificação do fluxo. Indisponível no GCP devido a limitações de rotulagem.

  • streamId: um identificador globalmente exclusivo para a transmissão.

Esses nomes de keys são reservados e você não pode substituir seus valores.

Opções de formato de arquivo

Com o Auto Loader, você pode ingerir arquivos JSON, CSV, PARQUET, AVRO, TEXT, BINARYFILE e ORC.

Opções genéricas

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

Opção

ignoreCorruptFiles

Tipo: Boolean

Se deve ignorar arquivos corrompidos. Se for verdadeiro, o trabalho Spark continuará a ser executado ao encontrar arquivos corrompidos e o conteúdo que foi lido ainda será retornado. Observável como numSkippedCorruptFiles na coluna operationMetrics do site Delta Lake história. Disponível em Databricks Runtime 11.3 LTS e acima.

Valor default: false

ignoreMissingFiles

Tipo: Boolean

Se deve ignorar os arquivos ausentes. Se for verdadeiro, o trabalho Spark continuará a ser executado quando encontrar arquivos ausentes e o conteúdo que foi lido ainda será retornado. Disponível em Databricks Runtime 11.3 LTS e acima.

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

modifiedAfter

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

Um carimbo de data e hora opcional para ingerir arquivos com um carimbo de data e hora de modificação posterior ao carimbo fornecido.

Valor default: Nenhum

modifiedBefore

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

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

Valor default: Nenhum

pathGlobFilter ou fileNamePattern

Tipo: String

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

Valor default: Nenhum

recursiveFileLookup

Tipo: 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 default: false

JSON opções

Opção

allowBackslashEscapingAnyCharacter

Tipo: Boolean

Se deve permitir que barras invertidas () sejam usadas para escapar qualquer caractere que a suceda.Se não estiver habilitado, somente caracteres que são explicitamente listados pela especificação JSON podem ser escapados.

Valor default: false

allowComments

Tipo: Boolean

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

Valor default: false

allowNonNumericNumbers

Tipo: Boolean

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

Valor default: true

allowNumericLeadingZeros

Tipo: Boolean

Se deve-se permitir que números inteiros comecem com zeros adicionais (ignoráveis) (por exemplo, 000001).

Valor default: false

allowSingleQuotes

Tipo: Boolean

Se deve ser permitido o uso de aspas simples (apóstrofo, caractere '\') para citar strings (nomes e valores de String).

Valor default: true

allowUnquotedControlChars

Tipo: Boolean

Permitir ou não que as strings JSON contenham caracteres de controle sem escape (caracteres ASCII com valor menor que a 32, incluindo caracteres de tabulação e de avanço de linha).

Valor default: false

allowUnquotedFieldNames

Tipo: Boolean

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

Valor default: false

badRecordsPath

Tipo: String

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

Valor default: Nenhum

columnNameOfCorruptRecord

Tipo: String

A coluna para armazenar registros que estão malformados e não podem ser analisados. Se o mode para análise estiver definido como DROPMALFORMED, esta coluna estará vazia.

Valor default: _corrupt_record

dateFormat

Tipo: String

O formato para analisar cadeias de caracteres de data.

Valor default: yyyy-MM-dd

dropFieldIfAllNull

Tipo: Boolean

Se deve ignorar colunas de todos os valores nulos ou matrizes e estruturas vazias durante a inferência do esquema.

Valor default: false

encoding ou charset

Tipo: String

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

Valor default: UTF-8

inferTimestamp

Tipo: Boolean

Se deve tentar inferir strings de carimbo de data/hora como TimestampType. Quando definido como true, a inferência de esquema pode demorar muito mais. Você deve ativar cloudFiles.inferColumnTypes para usar com o Auto Loader.

Valor default: false

lineSep

Tipo: String

Uma string entre dois registros JSON consecutivos.

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

locale

Tipo: String

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

Valor default: US

mode

Tipo: String

Modo analisador para trabalhar com registros malformados. Um de 'PERMISSIVE', 'DROPMALFORMED'ou 'FAILFAST'.

Valor default: PERMISSIVE

multiLine

Tipo: Boolean

Se os registros JSON abrangem múltiplas linhas.

Valor default: false

prefersDecimal

Tipo: Boolean

Tenta inferir strings como DecimalType ao invés de float ou tipo duplo quando possível. Você também deve usar a inferência de esquema, habilitando inferSchema ou usando cloudFiles.inferColumnTypes com o Auto Loader.

Valor default: false

primitivesAsString

Tipo: Boolean

Se inferir tipos primitivos como números e booleanos como StringType.

Valor default: false

readerCaseSensitive

Tipo: Boolean

Especifica o comportamento de diferenciação de maiúsculas e minúsculas quando rescuedDataColumn está ativado. Se verdadeiro, resgate as colunas de dados cujos nomes diferem caso a caso do esquema; caso contrário, leia os dados sem distinção entre maiúsculas e minúsculas. Disponível no Databricks Runtime 13.3 e acima.

Valor default: true

rescuedDataColumn

Tipo: String

Se deve coletar todos os dados que não podem ser analisados devido a uma incompatibilidade de tipo de dados ou incompatibilidade de esquema (incluindo capitalização de coluna) para uma coluna separada. Esta coluna é incluída por default ao usar o Auto Loader. Para obter mais detalhes, consulte O que é a coluna de dados resgatados?.

Valor default: Nenhum

timestampFormat

Tipo: String

O formato para analisar cadeias de caracteres de carimbo de data/hora.

Valor default: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]

timeZone

Tipo: String

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

Valor default: Nenhum

CSV opções

Opção

badRecordsPath

Tipo: String

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

Valor default: Nenhum

charToEscapeQuoteEscaping

Tipo: Char

O caractere usado para escapar do caractere usado para escapar das citações. Por exemplo, para o seguinte registro: [ " a\\", b ]:

  • Se o caractere para escapar do '\' estiver indefinido, o registro não será analisado. O analisador lerá caracteres: [a],[\],["],[,],[ ],[b] e gerará um erro porque não consegue encontrar uma aspa de fechamento.

  • Se o caractere para escapar do '\' for definido como '\', o registro será lido com valores de 2: [a\] e [b].

Valor default: '\0'

columnNameOfCorruptRecord

Observação

Compatível com Auto Loader. Não compatível com COPY INTO.

Tipo: String

A coluna para armazenar registros que estão malformados e não podem ser analisados. Se o mode para análise estiver definido como DROPMALFORMED, esta coluna estará vazia.

Valor default: _corrupt_record

comment

Tipo: Char

Define o caractere que representa um comentário de linha quando encontrado no início de uma linha de texto. Use '\0' para desativar a omissão de comentários.

Valor default: '\u0000'

dateFormat

Tipo: String

O formato para analisar cadeias de caracteres de data.

Valor default: yyyy-MM-dd

emptyValue

Tipo: String

Representação de string de um valor vazio.

Valor default: ""

encoding ou charset

Tipo: String

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

Valor default: UTF-8

enforceSchema

Tipo: 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 é ignorada por padrão ao usar o Auto Loader para resgatar dados e permitir a evolução do esquema.

Valor default: true

escape

Tipo: Char

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

Valor default: '\'

header

Tipo: Boolean

Se os arquivos CSV contêm um cabeçalho. O Auto Loader pressupõe que os arquivos tenham cabeçalhos ao inferir o esquema.

Valor default: false

ignoreLeadingWhiteSpace

Tipo: Boolean

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

Valor default: false

ignoreTrailingWhiteSpace

Tipo: Boolean

Se devem ser ignorados os espaços em branco à direita para cada valor analisado.

Valor default: false

inferSchema

Tipo: Boolean

Se deve inferir os tipos de dados dos registros CSV analisados ou assumir que todas as colunas são de StringType. Exige um passe adicional sobre os dados se configurado para true. Para o Auto Loader, use cloudFiles.inferColumnTypes em vez disso.

Valor default: false

lineSep

Tipo: String

Uma string entre dois registros CSV consecutivos.

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

locale

Tipo: String

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

Valor default: US

maxCharsPerColumn

Tipo: Int

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

Valor default: -1

maxColumns

Tipo: Int

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

Valor default: 20480

mergeSchema

Tipo: Boolean

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

Valor default: false

mode

Tipo: String

Modo de analisador para trabalhar com registros malformados. Um dos 'PERMISSIVE', 'DROPMALFORMED' e 'FAILFAST'.

Valor default: PERMISSIVE

multiLine

Tipo: Boolean

Se os registros CSV abrangem várias linhas.

Valor default: false

nanValue

Tipo: String

A representação de string de um valor não numérico ao analisar colunas FloatType e DoubleType .

Valor default: "NaN"

negativeInf

Tipo: String

A representação de string do infinito negativo ao analisar colunas FloatType ou DoubleType.

Valor default: "-Inf"

nullValue

Tipo: String

Representação de string de um valor nulo.

Valor default: ""

parserCaseSensitive (obsoleto)

Tipo: Boolean

Durante a leitura de arquivos, verifique se as colunas declaradas no cabeçalho devem ser alinhadas com o esquema com diferenciação de maiúsculas e minúsculas. Isso é true por padrão para o Auto Loader. As colunas que diferem por maiúsculas e minúsculas serão resgatadas no rescuedDataColumn se habilitadas. Esta opção foi preterida a favor de readerCaseSensitive.

Valor default: false

positiveInf

Tipo: String

A representação de string do infinito positivo ao analisar colunas FloatType ou DoubleType.

Valor default: "Inf"

preferDate

Tipo: Boolean

Tenta inferir strings 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 Auto Loader.

Valor default: true

quote

Tipo: Char

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

Valor default: "

readerCaseSensitive

Tipo: Boolean

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

Valor default: true

rescuedDataColumn

Tipo: String

Se deve coletar todos os dados que não podem ser analisados devido a: uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo capitalização de coluna) para uma coluna separada. Esta coluna é incluída por default ao usar o Auto Loader. Para obter mais detalhes, consulte O que é a coluna de dados resgatados?.

Valor default: Nenhum

sep ou delimiter

Tipo: String

A string separadora entre colunas.

Valor default: ","

skipRows

Tipo: Int

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

Valor default: 0

timestampFormat

Tipo: String

O formato para analisar cadeias de caracteres de carimbo de data/hora.

Valor default: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]

timeZone

Tipo: String

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

Valor default: Nenhum

unescapedQuoteHandling

Tipo: String

A estratégia para lidar com cotações sem escape. Opções permitidas:

  • STOP_AT_CLOSING_QUOTE: Caso sejam encontradas aspas não escapadas na entrada, acumule o caractere de aspas e continue a análise do valor como um valor entre aspas, até encontrar uma aspa de fechamento.

  • BACK_TO_DELIMITER: Se citações sem formato forem encontradas na entrada, considere o valor como um valor sem aspas. Isto fará com que o analisador acumule todos os caracteres do valor analisado atual até que o delimitador definido por sep seja localizado. Se nenhum delimitador for encontrado no valor, o analisador continuará acumulando caracteres da entrada até encontrar um delimitador ou o fim da linha.

  • STOP_AT_DELIMITER: Se citações sem formato forem encontradas 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 um final de linha seja encontrado na entrada.

  • SKIP_VALUE: Se citações sem formato forem encontradas na entrada, o conteúdo analisado para o valor fornecido será ignorado (até que o próximo delimitador seja encontrado) e o valor definido em nullValue será produzido.

  • RAISE_ERROR: Se forem encontradas aspas sem escape na entrada, um TextParsingException será lançado.

Valor default: STOP_AT_DELIMITER

XML opções

Opção

Descrição

Escopo

rowTag

As tags de linha dos arquivos XML a serem tratados como uma linha. No exemplo XML <books> <book><book>...<books>, o valor apropriado é book. Essa é uma opção obrigatória.

Ler

samplingRatio

Define uma fração de linhas usadas para inferência de esquema. As funções XML integradas ignoram essa opção. default: 1.0.

Ler

excludeAttribute

Se o senhor deve excluir atributos em elementos. default: false.

Ler

mode

Mode para lidar com registros corrompidos durante a análise.

PERMISSIVE: Para registros corrompidos, coloca as cadeias de caracteres malformadas em um campo configurado por columnNameOfCorruptRecord e define os campos malformados como null. Para manter registros corrompidos, é possível definir um campo do tipo string chamado 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 registros corrompidos. Esse modo não é compatível com as funções integradas de XML.

FAILFAST: Lança uma exceção quando o analisador encontra registros corrompidos.

Ler

inferSchema

Se true, tenta inferir um tipo apropriado para cada coluna DataFrame resultante. Se false, todas as colunas resultantes serão do tipo string. default: true. As funções XML integradas ignoram essa opção.

Ler

columnNameOfCorruptRecord

Permite renomear o novo campo que contém uma cadeia de caracteres malformada criada pelo modo PERMISSIVE. default: spark.sql.columnNameOfCorruptRecord.

Ler

attributePrefix

O prefixo dos atributos para diferenciar os atributos dos elementos. Esse será o prefixo dos nomes de campo. default é _. Pode estar vazio para ler XML, mas não para escrever.

leitura, gravação

valueTag

As tags usadas 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 caractere estiverem presentes em elementos com outros elementos ou atributos. default: _VALUE

leitura, gravação

encoding

Para leitura, decodifica os arquivos XML de acordo com o tipo de codificação fornecido. Para gravação, especifica a codificação (charset) dos arquivos XML salvos. As funções XML integradas ignoram essa opção. default: 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. default: true. Os dados de caracteres somente com espaço em branco são ignorados.

Ler

rowValidationXSDPath

Caminho para um arquivo XSD opcional que é usado para validar o XML de cada linha individualmente. As linhas que falham na validação são tratadas como erros de análise, conforme descrito acima. O XSD não afeta de outra forma o esquema fornecido ou inferido.

Ler

ignoreNamespace

Se true, os prefixos de namespaces em elementos e atributos XML serão ignorados. As tags <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 filhos lidos. A análise de XML não reconhece o namespace, mesmo que false. default: false.

Ler

timestampFormat

Cadeias de formato de carimbo de data/hora personalizadas que seguem o formato padrão datetime. Isso se aplica ao tipo timestamp. default: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX].

leitura, gravação

timestampNTZFormat

Strings 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. default: yyyy-MM-dd'T'HH:mm:ss[.SSS]

leitura, gravação

dateFormat

Cadeias de formato de data personalizadas que seguem o formato padrão datetime. Isso se aplica ao tipo de data. default: yyyy-MM-dd.

leitura, gravação

locale

Define um locale como uma etiqueta de idioma no formato IETF BCP 47. Por exemplo, locale é usado ao analisar datas e registros de data e hora. default: en-US.

Ler

rootTag

Tags raiz dos arquivos XML. Por exemplo, em <books> <book><book>...</books>, o valor apropriado é books. O senhor pode incluir atributos básicos especificando um valor como books foo="bar". default: ROWS.

Gravar

declaration

Conteúdo da declaração XML a ser gravada no início de cada arquivo XML de saída, antes do rootTag. Por exemplo, um valor de foo faz com que <?xml foo?> seja gravado. Defina como uma cadeia de caracteres vazia para suprimir. default: version="1.0" encoding="UTF-8" standalone="yes".

Gravar

arrayElementName

Nome do elemento XML que envolve cada elemento de uma coluna com valor de matriz durante a gravação. default: item.

Gravar

nullValue

Define a representação de strings de um valor nulo. default: cadeias de caracteres null. Quando esse valor é null, o analisador não escreve atributos e elementos para os campos.

leitura, gravação

compression

Código de compactação a ser usado ao salvar no arquivo. Esse pode ser um dos nomes abreviados conhecidos que não diferenciam maiúsculas de minúsculas (none, bzip2, gzip,lz4, snappy', and deflate`). As funções XML integradas ignoram essa opção. default: none.

Gravar

validateName

Se verdadeiro, lança um erro na falha de 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. default: true.

Gravar

readerCaseSensitive

Especifica o comportamento de sensibilidade a maiúsculas e minúsculas quando rescuedDataColumn está ativado. Se for verdadeiro, recupera as colunas de dados cujos nomes diferem em maiúsculas e minúsculas do esquema; caso contrário, lê os dados sem distinção entre maiúsculas e minúsculas. default: true.

Ler

rescuedDataColumn

Se o senhor deve coletar todos os dados que não podem ser analisados devido a uma incompatibilidade de tipo de dados e de esquema (incluindo o revestimento da coluna) em uma coluna separada. Essa coluna é incluída pelo site default ao usar o Auto Loader. Para obter mais detalhes, consulte O que é a coluna de dados resgatada? default: Nenhum.

Ler

PARQUET opções

Opção

datetimeRebaseMode

Tipo: String

Controla o rebase dos valores de DATA e TIMESTAMP entre calendários gregorianos julianos e prolóticos. Valores permitidos: EXCEPTION, LEGACY e CORRECTED.

Valor default: LEGACY

int96RebaseMode

Tipo: String

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

Valor default: LEGACY

mergeSchema

Tipo: Boolean

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

Valor default: false

readerCaseSensitive

Tipo: Boolean

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

Valor default: true

rescuedDataColumn

Tipo: String

Se deve coletar todos os dados que não podem ser analisados devido a: uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo capitalização de coluna) para uma coluna separada. Esta coluna é incluída por default ao usar o Auto Loader. Para obter mais detalhes, consulte O que é a coluna de dados resgatados?.

Valor default: Nenhum

AVRO opções

Opção

avroSchema

Tipo: String

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

Valor default: Nenhum

datetimeRebaseMode

Tipo: String

Controla o rebase dos valores de DATA e TIMESTAMP entre calendários gregorianos julianos e prolóticos. Valores permitidos: EXCEPTION, LEGACY e CORRECTED.

Valor default: LEGACY

mergeSchema

Tipo: Boolean

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

Valor default: false

readerCaseSensitive

Tipo: Boolean

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

Valor default: true

rescuedDataColumn

Tipo: String

Se deve coletar todos os dados que não podem ser analisados devido a: uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo capitalização de coluna) para uma coluna separada. Esta coluna é incluída por default ao usar o Auto Loader. Para obter mais detalhes, consulte O que é a coluna de dados resgatados?.

Valor default: Nenhum

BINARYFILE opções

Arquivos binários não têm opções de configuração adicionais.

TEXT opções

Opção

encoding

Tipo: String

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

Valor default: UTF-8

lineSep

Tipo: String

Uma string entre dois registros TEXT consecutivos.

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

wholeText

Tipo: Boolean

Se deve ler um arquivo como um único registro.

Valor default: false

ORC opções

Opção

mergeSchema

Tipo: Boolean

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

Valor default: false

Opções específicas de nuvem

O Auto Loader oferece uma série de opções para configurar a infraestrutura de nuvem.

Opções específicas do AWS

Forneça a seguinte opção somente se você escolher cloudFiles.useNotifications = true e desejar que o Auto Loader configure os serviços de notificação para você:

Opção

cloudFiles.region

Tipo: String

A região onde o bucket do S3 de origem reside e onde os serviços do AWS SNS e do SQS serão criados.

default valor: A região da instância EC2.

Forneça a seguinte opção apenas se escolher cloudFiles.useNotifications = true e pretender que o Auto Loader utilize uma fila que já configurou:

Opção

cloudFiles.queueUrl

Tipo: String

O URL da fila SQS. Se fornecido, o Auto Loader consome diretamente os eventos dessa fila em vez de configurar seus próprios serviços AWS SNS e SQS.

Valor default: Nenhum

Você pode utilizar as opções a seguir para fornecer credenciais de acesso ao AWS SNS e SQS quando as IAM roles não estão disponíveis ou quando você está coletando dados de diferentes.

Opção

cloudFiles.awsAccessKey

Tipo: String

A ID da chave de acesso AWS para o usuário. Deve ser fornecido com cloudFiles.awsSecretKey.

Valor default: Nenhum

cloudFiles.awsSecretKey

Tipo: String

A chave de acesso secreto da AWS para o usuário. Deve ser fornecido com cloudFiles.awsAccessKey.

Valor default: Nenhum

cloudFiles.roleArn

Tipo: String

O ARN de uma IAM role a ser assumida. O papel pode ser assumido a partir do instance profile do seu cluster ou fornecendo credenciais com cloudFiles.awsAccessKey e cloudFiles.awsSecretKey.

Valor default: Nenhum

cloudFiles.roleExternalId

Tipo: String

Um identificador a ser fornecido ao assumir uma função usando cloudFiles.roleArn.

Valor default: Nenhum

cloudFiles.roleSessionName

Tipo: String

Um nome de sessão opcional para utilizar ao assumir um papel utilizando cloudFiles.roleArn.

Valor default: Nenhum

cloudFiles.stsEndpoint

Tipo: String

Um ponto final opcional a ser fornecido para acessar o AWS STS ao assumir uma função utilizando o cloudFiles.roleArn.

Valor default: Nenhum

Opções específicas do Azure

Você deve fornecer valores para todas as seguintes opções se especificar cloudFiles.useNotifications = true e desejar que o Auto Loader configure os serviços de notificação para você:

Opção

cloudFiles.clientId

Tipo: String

A ID do cliente ou ID da aplicação da entidade do serviço.

Valor default: Nenhum

cloudFiles.clientSecret

Tipo: String

O segredo do cliente da entidade de serviço.

Valor default: Nenhum

cloudFiles.connectionString

Tipo: String

A string de caracteres de conexão para a conta de armazenamento, com base na chave de acesso à conta ou na assinatura de acesso compartilhado (SAS).

Valor default: Nenhum

cloudFiles.resourceGroup

Tipo: String

O Grupo de Recursos do Azure sob o qual a conta de armazenamento é criada.

Valor default: Nenhum

cloudFiles.subscriptionId

Tipo: String

O ID de assinatura do Azure sob o qual o grupo de recursos é criado.

Valor default: Nenhum

cloudFiles.tenantId

Tipo: String

A ID do tenant do Azure sob a qual a entidade de serviço é criada.

Valor default: Nenhum

Importante

A configuração de notificação automática está disponível nas regiões Azure China e Government com Databricks Runtime 9.1e acima. Você deve fornecer um queueName para usar o Auto Loader com notificações de arquivo nessas regiões para versões mais antigas do DBR.

Forneça a seguinte opção apenas se escolher cloudFiles.useNotifications = true e pretender que o Auto Loader utilize uma fila que já configurou:

Opção

cloudFiles.queueName

Tipo: String

O nome da fila Azure. Se fornecida, a origem dos arquivos de nuvem consome diretamente os eventos dessa fila em vez de configurar seus próprios serviços de Armazenamento de Filas e Grade de Eventos do Azure. Nesse caso, seu cloudFiles.connectionString exige apenas permissões de leitura na fila.

Valor default: Nenhum

Opções específicas do Google

O Auto Loader pode configurar automaticamente os serviços de notificação para você aproveitando as Contas de serviço do Google. Você pode configurar seu cluster para assumir uma conta de serviço seguindo a configuração de serviço do Google. As permissões de que sua conta de serviço precisa são especificadas em O que é o modo de notificação de arquivo do Auto Loader?. Caso contrário, você poderá fornecer as seguintes opções de autenticação se desejar que o Auto Loader configure os serviços de notificação para você.

Opção

cloudFiles.client

Tipo: String

A ID do cliente da conta do Google Service.

Valor default: Nenhum

cloudFiles.clientEmail

Tipo: String

O e-mail da Conta de Serviço do Google.

Valor default: Nenhum

cloudFiles.privateKey

Tipo: String

A chave privada gerada para a conta de serviço do Google.

Valor default: Nenhum

cloudFiles.privateKeyId

Tipo: String

A ID da chave privada gerada para a conta de serviço do Google.

Valor default: Nenhum

cloudFiles.projectId

Tipo: String

O ID do projeto em que o bucket do GCS está. A assinatura do Google Cloud Pub/Subscrição também será criada dentro deste projeto.

Valor default: Nenhum

Forneça a seguinte opção apenas se escolher cloudFiles.useNotifications = true e pretender que o Auto Loader utilize uma fila que já configurou:

Opção

cloudFiles.subscription

Tipo: String

O nome da assinatura do Google Cloud Pub/Sub. Se fornecido, a fonte de arquivos na nuvem consome eventos desta fila em vez de configurar seus próprios serviços de Notificação GCS e Google Cloud Pub/Sub.

Valor default: Nenhum