Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
As opções de configuração específicas para a cloudFiles origem são prefixadas com cloudFiles de forma que estejam em um namespace separado das outras opções de fontes do Streaming Estruturado.
- Opções comuns do carregador automático
- Opções de listagem de diretório
- Opções de notificação de arquivo
- Opções de formato de ficheiro
- Opções específicas da nuvem
Opções comuns do carregador automático
Você pode configurar as seguintes opções para fluxos do Auto Loader.
| Opções |
|---|
cloudFiles.allowOverwritesTipo: BooleanSe as alterações do arquivo de diretório de entrada devem ser permitidas para substituir os dados existentes. Para obter considerações de configuração, consulte O Auto Loader processa o ficheiro novamente quando o ficheiro é anexado ou substituído?. Predefinição: false |
cloudFiles.backfillIntervalTipo: Interval StringO Auto Loader pode acionar backfills assíncronos a intervalos regulares. Por exemplo 1 day , para encher diariamente ou 1 week para encher semanalmente. Para obter mais informações, consulte Acionar backfills regulares usando cloudFiles.backfillInterval.Não utilize quando cloudFiles.useManagedFileEvents estiver definido como true.Padrão: Nenhum |
cloudFiles.cleanSourceTipo: StringSe deseja excluir automaticamente os arquivos processados do diretório de entrada. Quando definido como OFF (padrão), nenhum arquivo é excluído.Quando definido como DELETE, o Auto Loader exclui automaticamente os arquivos 30 dias após serem processados. Para fazer isso, Auto Loader deve ter permissões de gravação para o diretório de origem.Quando definido como MOVE, o Auto Loader move automaticamente os ficheiros para a localização especificada no prazo de cloudFiles.cleanSource.moveDestination 30 dias após o seu processamento. Para fazer isso, o Auto Loader deve ter permissões de gravação para o diretório de origem, bem como para o local de movimentação.Um arquivo é considerado processado quando tem um valor não nulo para commit_time no resultado da cloud_files_state função de valor da tabela. Consulte cloud_files_state função de valor de tabela. A espera adicional de 30 dias após o processamento pode ser configurada usando cloudFiles.cleanSource.retentionDuration.Nota: O Databricks não recomenda o uso dessa opção se houver vários fluxos consumindo dados do local de origem, porque o consumidor mais rápido excluirá os arquivos e eles não serão ingeridos nas fontes mais lentas. Nota: Ativar este recurso requer que o Auto Loader mantenha um estado adicional no seu ponto de verificação, o que gera sobrecarga de desempenho, mas permite uma melhor observabilidade através da função de tabela valorizada cloud_files_state. Consulte cloud_files_state função de valor de tabela.Nota: cleanSource usa a configuração atual para decidir se deseja MOVE ou DELETE um determinado arquivo. Por exemplo, suponha que a configuração foi MOVE quando o arquivo foi originalmente processado, mas foi alterado para DELETE quando o arquivo se tornou um candidato para limpeza 30 dias depois. Nesse caso, o cleanSource excluirá o arquivo.Nota: cleanSource é o melhor esforço. Não é garantido que os ficheiros sejam eliminados assim que o retentionDuration período terminar. Em vez disso, eles se tornam candidatos para limpeza e são excluídos com base no melhor esforço durante o processamento de fluxo regular. Para economizar custos, cleanSource saia graciosamente após a conclusão do processamento do fluxo, mesmo que haja candidatos restantes para limpeza. Os restantes candidatos serão selecionados durante o próximo processamento.Disponível no Databricks Runtime 16.4 e superior. Padrão: OFF |
cloudFiles.cleanSource.retentionDurationTipo: Interval StringQuantidade de tempo para esperar antes que os arquivos processados se tornem candidatos para arquivamento com cleanSource. Deve ser superior a 7 dias para DELETE. Nenhuma restrição mínima para MOVE.Disponível no Databricks Runtime 16.4 e superior. Valor padrão: 30 dias |
cloudFiles.cleanSource.moveDestinationTipo: StringCaminho para guardar ficheiros processados quando cloudFiles.cleanSource está configurado para MOVE.O local de movimentação é restrito das seguintes maneiras:
Auto Loader deve ter permissões de gravação para este diretório. Disponível no Databricks Runtime 16.4 e superior. Valor padrão: Nenhum |
cloudFiles.formatTipo: StringO formato do ficheiro de dados no caminho de origem. Os valores permitidos incluem:
Padrão: Nenhum (opção obrigatória) |
cloudFiles.includeExistingFilesTipo: BooleanSe deve incluir arquivos existentes no caminho de entrada de processamento de fluxo ou apenas processar novos arquivos que chegam após a configuração inicial. Essa opção é avaliada somente quando você inicia um fluxo pela primeira vez. Alterar essa opção depois de reiniciar o fluxo não tem efeito. Predefinição: true |
cloudFiles.inferColumnTypesTipo: BooleanSe é necessário inferir tipos exatos de coluna ao utilizar a inferência de esquema. Por padrão, as colunas são inferidas como cadeias de caracteres ao inferir conjuntos de dados JSON e CSV. Consulte inferência de esquema para obter mais detalhes. Predefinição: false |
cloudFiles.maxBytesPerTriggerTipo: Byte StringO número máximo de novos bytes a serem processados em cada acionamento. Você pode especificar uma cadeia de caracteres de byte, como 10g para limitar cada microlote a 10 GB de dados. Este é um máximo suave. Se você tiver arquivos de 3 GB cada, o Azure Databricks processará 12 GB em um microlote. Quando usado em conjunto com cloudFiles.maxFilesPerTrigger, Azure Databricks consome até o limite inferior de cloudFiles.maxFilesPerTrigger ou cloudFiles.maxBytesPerTrigger, o que for alcançado primeiro. Esta opção não tem efeito quando usada com Trigger.Once() (Trigger.Once() foi preterido).Padrão: Nenhum |
cloudFiles.maxFileAgeTipo: Interval StringPor quanto tempo um evento de arquivo é rastreado para fins de desduplicação. O Databricks não recomenda ajustar esse parâmetro, a menos que você esteja ingerindo dados da ordem de milhões de arquivos por hora. Consulte a seção sobre Rastreamento de eventos de arquivo para obter mais detalhes. Ajustar cloudFiles.maxFileAge muito agressivamente pode causar problemas de qualidade dos 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 que soluções de ingestão de dados comparáveis recomendam.Padrão: Nenhum |
cloudFiles.maxFilesPerTriggerTipo: IntegerO número máximo de novos arquivos a serem processados em cada gatilho. Quando usado em conjunto com cloudFiles.maxBytesPerTrigger, Azure Databricks consome até o limite inferior de cloudFiles.maxFilesPerTrigger ou cloudFiles.maxBytesPerTrigger, o que for alcançado primeiro. Esta opção não tem efeito quando usada com Trigger.Once() (preterido).Padrão: 1000 |
cloudFiles.partitionColumnsTipo: StringUma 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 pares de valores-chave 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, be c. Por predefinição, estas colunas são adicionadas automaticamente ao seu esquema se estiver a usar a inferência de esquema e fornecer o <base-path> a partir do qual carregar os dados. Se você fornecer um esquema, o Auto Loader espera que essas colunas sejam incluídas no esquema. Se você não quiser essas colunas como parte do seu esquema, você pode especificar "" para ignorar essas colunas. Além disso, pode usar esta opção quando quiser que as colunas sejam deduzidas automaticamente com base no caminho do ficheiro em estruturas de diretórios complexas, por exemplo:<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.csvEspecificar cloudFiles.partitionColumns como year,month,day retorna year=2022 para file1.csv, mas as colunas month e day são null.month e day são analisados corretamente para file2.csv e file3.csv.Padrão: Nenhum |
cloudFiles.schemaEvolutionModeTipo: StringO modo para evoluir o esquema à medida que novas colunas são descobertas nos dados. Por padrão, as colunas são inferidas como cadeias de caracteres ao inferir conjuntos de dados JSON. Consulte a evolução do esquema para obter mais detalhes. Padrão: addNewColumns quando um esquema não é fornecido, none caso contrário |
cloudFiles.schemaHintsTipo: StringInformações de esquema que você fornece ao Auto Loader durante a inferência do esquema. Consulte sugestões de esquema para obter mais detalhes. Padrão: Nenhum |
cloudFiles.schemaLocationTipo: StringO local para armazenar o esquema inferido e as alterações subsequentes. Consulte inferência de esquema para obter mais detalhes. Padrão: Nenhum (necessário para inferir o esquema) |
cloudFiles.useStrictGlobberTipo: BooleanOptar por usar um globber estrito que corresponda ao comportamento padrão de globbing de outras fontes de arquivos no Apache Spark. Consulte Padrões comuns de carregamento de dados para obter mais detalhes. Disponível no Databricks Runtime 12.2 LTS e superior. Predefinição: false |
cloudFiles.validateOptionsTipo: BooleanSe deve validar as opções do Auto Loader e retornar um erro para opções desconhecidas ou inconsistentes. Predefinição: true |
Opções de listagem do diretório
As opções a seguir são relevantes para o modo de listagem de diretórios.
| Opções |
|---|
cloudFiles.useIncrementalListing (preterido)Tipo: StringEsta caraterística foi preterida. O Databricks recomenda o uso do modo de notificação de arquivo com eventos de arquivo em vez de cloudFiles.useIncrementalListing.Se deve usar a listagem incremental em vez da listagem completa no modo de listagem de diretório. Por padrão, o Auto Loader faz o melhor esforço para detetar automaticamente se um determinado diretório é aplicável para a listagem incremental. Você pode usar explicitamente a listagem incremental ou usar a listagem de diretório completo definindo-a como true ou false respectivamente.A ativação incorreta da listagem incremental em um diretório não ordenado lexicamente impede que o Auto Loader descubra novos arquivos. Funciona com o Azure Data Lake Storage ( abfss://), S3 (s3://) e GCS (gs://).Disponível em Databricks Runtime 9.1 LTS e superior. Padrão: auto no Databricks Runtime 17.2 e inferior, false no Databricks Runtime 17.3 e superiorValores disponíveis: auto, true, false |
Opções de notificação de arquivo
As opções a seguir são relevantes para o modo de notificação de arquivo.
| Opções |
|---|
cloudFiles.fetchParallelismTipo: IntegerNúmero de threads a serem usados ao extrair mensagens do serviço de fila. Não utilize quando cloudFiles.useManagedFileEvents estiver definido como true.Padrão: 1 |
cloudFiles.pathRewritesTipo: Uma cadeia de caracteres JSON Necessário apenas se especificares um queueUrl que receba notificações de ficheiro de múltiplos buckets do S3 e desejares tirar partido dos pontos de montagem configurados para aceder aos dados nestes contentores. Use esta opção para reescrever o prefixo do caminho bucket/key com o ponto de montagem. Apenas 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 em dbfs:/mnt/data-warehouse/2017/08/fileA.json.Não utilize quando cloudFiles.useManagedFileEvents estiver definido como true.Padrão: Nenhum |
cloudFiles.resourceTagTipo: Map(String, String)Uma série de pares de tags chave-valor 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 obter mais informações sobre o Azure, consulte Nomeação de filas e metadados e a cobertura de properties.labels em Assinaturas de Eventos. O Auto Loader armazena esses pares de tags chave-valor em JSON como rótulos.
(1)Para obter mais informações sobre o GCP, consulte Relatório de uso com etiquetas. (1) Não utilize quando cloudFiles.useManagedFileEvents estiver definido como true. Em vez disso, defina tags de recursos usando o console do provedor de nuvem.Padrão: Nenhum |
cloudFiles.useManagedFileEventsQuando definido como true, o Auto Loader usa o serviço de eventos de arquivo para descobrir arquivos em seu local externo. Você pode usar essa opção somente se o caminho de carregamento estiver em um local externo com eventos de arquivo habilitados. Consulte Uso do modo de notificação de arquivo com eventos de arquivo.Os eventos de arquivo fornecem desempenho no nível de notificações na descoberta de arquivos, porque o Auto Loader pode descobrir novos arquivos desde a última execução. Ao contrário da listagem de diretórios, este processo não precisa listar todos os arquivos no diretório. Existem algumas situações em que o Auto Loader usa a listagem de diretórios, mesmo que a opção de eventos de arquivo esteja ativada:
Consulte Quando o Auto Loader com eventos de arquivo usa a listagem de diretórios? para obter uma lista abrangente de situações em que o Auto Loader usa a listagem de diretórios com essa opção. Disponível em Databricks Runtime 14.3 LTS e superiores. |
cloudFiles.useNotificationsTipo: BooleanSe deve usar o modo de notificação de arquivo para determinar quando há novos arquivos. Se false, use o modo de lista de diretórios. Consulte Comparar modos de deteção de ficheiros do Auto Loader.Não utilize quando cloudFiles.useManagedFileEvents estiver definido como true.Predefinição: false |
(1) O Auto Loader adiciona por padrão os seguintes pares de etiquetas chave-valor, de acordo com melhores esforços:
-
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 global exclusivo para o fluxo.
Esses nomes de chave são reservados e você não pode substituir seus valores.
Opções de formato de ficheiro
Com Auto Loader você pode ingerir JSON, CSV, , PARQUETAVRO, TEXT, BINARYFILEe ORC arquivos.
- Opções genéricas
-
JSONOpções -
CSVOpções -
XMLOpções -
PARQUETOpções -
AVROOpções -
BINARYFILEOpções -
TEXTOpções -
ORCOpções
Opções genéricas
As opções a seguir se aplicam a todos os formatos de arquivo.
| Opção |
|---|
ignoreCorruptFilesTipo: BooleanSe deve ignorar arquivos corrompidos. Se verdadeiro, os trabalhos do Spark continuarão a ser executados ao encontrar arquivos corrompidos e o conteúdo que foi lido ainda será retornado. Observável como numSkippedCorruptFiles naoperationMetrics coluna da história do Lago Delta. Disponível em Databricks Runtime 11.3 LTS e superior.Valor predefinido: false |
ignoreMissingFilesTipo: BooleanSe deve ou não ignorar ficheiros em falta. Se verdadeiro, os trabalhos do Spark continuarão a ser executados ao encontrar arquivos ausentes e o conteúdo que foi lido ainda será retornado. Disponível em Databricks Runtime 11.3 LTS e superior. Valor padrão: false para Auto Loader, true para COPY INTO (legado) |
modifiedAfterTipo: Timestamp String, por exemplo, 2021-01-01 00:00:00.000000 UTC+0Um carimbo de data/hora opcional como filtro para processar apenas ficheiros com um carimbo de data/hora de modificação posterior ao fornecido. Valor padrão: Nenhum |
modifiedBeforeTipo: Timestamp String, por exemplo, 2021-01-01 00:00:00.000000 UTC+0Um carimbo de data/hora opcional como filtro para ingerir apenas arquivos que tenham um carimbo de data/hora de modificação antes do carimbo de data/hora fornecido. Valor padrão: Nenhum |
pathGlobFilter ou fileNamePatternTipo: StringUm padrão glob potencial a ser fornecido para selecionar ficheiros. Equivalente a PATTERN em COPY INTO (antigo).
fileNamePattern pode ser usado em read_files.Valor padrão: Nenhum |
recursiveFileLookupTipo: BooleanEsta opção pesquisa diretórios aninhados, mesmo que seus nomes não sigam um esquema de nomenclatura de partição como date=2019-07-01. Valor predefinido: false |
JSON Opções
| Opção |
|---|
allowBackslashEscapingAnyCharacterTipo: BooleanSe deve permitir que as barras invertidas escapem de qualquer personagem que a consiga. Se não estiver ativado, somente os caracteres explicitamente listados pela especificação JSON poderão ser escapados. Valor predefinido: false |
allowCommentsTipo: BooleanSe deve permitir o uso de comentários de estilo Java, C e C++ ( '/', '*'e '//' variedades) dentro do conteúdo analisado ou não.Valor predefinido: false |
allowNonNumericNumbersTipo: BooleanPermitir que o conjunto de tokens "não é um número" ( NaN) seja aceito como valores numéricos de ponto flutuante válidos.Valor predefinido: true |
allowNumericLeadingZerosTipo: BooleanPermitir ou não que números integrais comecem com zeros adicionais (ignorantes) (por exemplo, 000001).Valor predefinido: false |
allowSingleQuotesTipo: BooleanSe deve permitir o uso de aspas simples (apóstrofo, caractere '\') para citar cadeias de caracteres (nomes e valores String).Valor predefinido: true |
allowUnquotedControlCharsTipo: BooleanSe as cadeias de caracteres JSON devem conter caracteres de controle sem escape (caracteres ASCII com valor inferior a 32, incluindo caracteres de tabulação e alimentação de linha) ou não. Valor predefinido: false |
allowUnquotedFieldNamesTipo: BooleanSe deve permitir o uso de nomes de campos não citados (que são permitidos pelo JavaScript, mas não pela especificação JSON). Valor predefinido: false |
badRecordsPathTipo: StringO caminho para armazenar ficheiros que registam as informações sobre registos JSON inválidos. Usar a badRecordsPath opção em uma fonte de dados baseada em arquivo tem as seguintes limitações:
Valor padrão: Nenhum |
columnNameOfCorruptRecordTipo: StringA 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 predefinido: _corrupt_record |
dateFormatTipo: StringO formato para analisar cadeias de caracteres de data. Valor predefinido: yyyy-MM-dd |
dropFieldIfAllNullTipo: BooleanSe as colunas de todos os valores nulos ou matrizes e estruturas vazias devem ser ignoradas durante a inferência do esquema. Valor predefinido: false |
encoding ou charsetTipo: StringO nome da codificação dos arquivos JSON. Consulte a lista de opções em java.nio.charset.Charset. Você não pode usar UTF-16 e UTF-32 quando multiline é true.Valor predefinido: UTF-8 |
inferTimestampTipo: BooleanSe deve tentar inferir cadeias de data/hora como um TimestampType. Quando definido comotrue, a inferência do esquema pode levar visivelmente mais tempo. Você deve habilitar cloudFiles.inferColumnTypes para usar com o Auto Loader.Valor predefinido: false |
lineSepTipo: StringUma cadeia de caracteres entre dois registros JSON consecutivos. Valor padrão: Nenhum, que abrange \r, \r\ne \n |
localeTipo: StringUm java.util.Locale identificador. Influencia a data padrão, o timestamp e a análise decimal dentro do JSON.Valor predefinido: US |
modeTipo: StringModo de análise para lidar com registros malformados. Um de PERMISSIVE, DROPMALFORMEDou FAILFAST.Valor predefinido: PERMISSIVE |
multiLineTipo: BooleanSe os registros JSON abrangem várias linhas. Valor predefinido: false |
prefersDecimalTipo: BooleanProcura inferir cadeias de caracteres como DecimalType em vez de float ou double, quando possível. Você também deve usar a inferência de esquema, seja ativando ou...inferSchema ou usando cloudFiles.inferColumnTypes com Auto Loader.Valor predefinido: false |
primitivesAsStringTipo: BooleanDecidir se se deve inferir tipos primitivos como números e booleanos como StringType.Valor predefinido: false |
readerCaseSensitiveTipo: BooleanEspecifica o comportamento de sensibilidade a maiúsculas quando rescuedDataColumn está habilitado. Se for verdade, resgate as colunas de dados cujos nomes diferem em maiúsculas e minúsculas do esquema; caso contrário, leia os dados sem distinguir entre maiúsculas e minúsculas. Disponível no Databricks Runtime13.3 ou superior. Valor predefinido: true |
rescuedDataColumnTipo: StringDeterminar se todos os dados que não podem ser processados devido a uma incompatibilidade de tipo de dados ou incompatibilidade de esquema (incluindo o casing das colunas) devem ser recolhidos numa coluna separada. Esta coluna é incluída por padrão ao usar o Auto Loader. Para obter mais detalhes, consulte O que é a coluna de dados resgatados?. COPY INTO (legado) não suporta a coluna de dados resgatados porque não é possível definir manualmente o esquema usando COPY INTO. A Databricks recomenda o uso do Auto Loader para a maioria dos cenários de ingestão.Valor padrão: Nenhum |
singleVariantColumnTipo: StringIngerir o documento JSON inteiro, analisado e transformado numa única coluna do tipo Variant, utilizando a string fornecida como nome da coluna. Se estiver desativado, os campos JSON serão incorporados às suas próprias colunas. Valor padrão: Nenhum |
timestampFormatTipo: StringO formato para analisar sequências de carimbos de data/hora. Valor predefinido: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] |
timeZoneTipo: StringO java.time.ZoneId a utilizar na análise de horários e datas.Valor padrão: Nenhum |
CSV Opções
| Opção |
|---|
badRecordsPathTipo: StringO caminho para armazenar ficheiros que registam a informação sobre registos CSV incorretos. Valor padrão: Nenhum |
charToEscapeQuoteEscapingTipo: CharO personagem usado para escapar do personagem usado para escapar de citações. Por exemplo, para o seguinte registo: [ " a\\", b ]
Valor predefinido: '\0' |
columnNameOfCorruptRecordSuportado para Auto Loader. Não suportado para COPY INTO (legado).Tipo: StringA 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 predefinido: _corrupt_record |
commentTipo: CharDefine 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 predefinido: '\u0000' |
dateFormatTipo: StringO formato para analisar cadeias de caracteres de data. Valor predefinido: yyyy-MM-dd |
emptyValueTipo: StringRepresentação de cadeia de caracteres de um valor vazio. Valor predefinido: "" |
encoding ou charsetTipo: StringO nome da codificação dos arquivos CSV. Consulte a lista de opções em java.nio.charset.Charset.
UTF-16 e UTF-32 não pode ser usado quando multiline é true.Valor predefinido: UTF-8 |
enforceSchemaTipo: BooleanSe deve aplicar à força o esquema especificado ou inferido aos arquivos CSV. Se a opção estiver ativada, os cabeçalhos dos arquivos CSV serão ignorados. Esta opção é ignorada por padrão ao usar o Auto Loader para resgatar dados e permitir a evolução do esquema. Valor predefinido: true |
escapeTipo: CharO caractere de escape a ser usado ao analisar os dados. Valor predefinido: '\' |
headerTipo: BooleanSe os arquivos CSV contêm um cabeçalho. O Auto Loader assume que os arquivos têm cabeçalhos ao inferir o esquema. Valor predefinido: false |
ignoreLeadingWhiteSpaceTipo: BooleanSe deve ignorar os espaços em branco à esquerda para cada valor analisado. Valor predefinido: false |
ignoreTrailingWhiteSpaceTipo: BooleanSe deve ignorar espaços em branco à direita para cada valor analisado. Valor predefinido: false |
inferSchemaTipo: BooleanSe é necessário inferir os tipos de dados dos registros CSV analisados ou assumir que todas as colunas são de StringType. Requer uma passagem adicional sobre os dados, se definido como true. Em vez disso, use o cloudFiles.inferColumnTypes para o Auto Loader.Valor predefinido: false |
lineSepTipo: StringUma cadeia de caracteres entre dois registros CSV consecutivos. Valor padrão: Nenhum, que abrange \r, \r\ne \n |
localeTipo: StringUm java.util.Locale identificador. Influencia a data padrão, o carimbo de data e hora e a interpretação de decimais dentro do CSV.Valor predefinido: US |
maxCharsPerColumnTipo: IntNúmero máximo de caracteres esperados de um valor a ser analisado. Pode ser usado para evitar erros de memória. Por predefinição, é -1, o que significa ilimitado.Valor predefinido: -1 |
maxColumnsTipo: IntO limite rígido de quantas colunas um registro pode ter. Valor predefinido: 20480 |
mergeSchemaTipo: BooleanSe deve inferir o esquema em vários arquivos e mesclar o esquema de cada arquivo. Ativado por padrão para o Auto Loader ao inferir o esquema. Valor predefinido: false |
modeTipo: StringModo de análise para lidar com registros malformados. Um dos 'PERMISSIVE','DROPMALFORMED', e 'FAILFAST'.Valor predefinido: PERMISSIVE |
multiLineTipo: BooleanSe os registros CSV abrangem várias linhas. Valor predefinido: false |
nanValueTipo: StringA representação em cadeia de caracteres de um valor não numérico ao analisar as colunas FloatType e DoubleType.Valor predefinido: "NaN" |
negativeInfTipo: StringA representação em texto do infinito negativo ao interpretar as colunas FloatType ou DoubleType.Valor predefinido: "-Inf" |
nullValueTipo: StringRepresentação de cadeia de caracteres de um valor nulo. Valor predefinido: "" |
parserCaseSensitive (preterido)Tipo: BooleanDurante a leitura de arquivos, se as colunas declaradas no cabeçalho devem ser alinhadas com o esquema, respeitando a distinção entre maiúsculas e minúsculas. Isso é true por padrão para o Auto Loader. No rescuedDataColumn, as colunas que diferem quanto a maiúsculas e minúsculas serão resgatadas se for ativada. Esta opção foi preterida em favor do readerCaseSensitive.Valor predefinido: false |
positiveInfTipo: StringA cadeia de caracteres que representa o infinito positivo ao analisar colunas FloatType ou DoubleType.Valor predefinido: "Inf" |
preferDateTipo: BooleanTenta inferir cadeias de caracteres como datas ao invés de timestamp quando possível. Você também deve usar a inferência de esquema, ativando inferSchema ou usandocloudFiles.inferColumnTypes com Carregador Automático.Valor predefinido: true |
quoteTipo: CharO caractere usado para escapar de valores onde o delimitador de campo é parte do valor. Valor predefinido: " |
readerCaseSensitiveTipo: BooleanEspecifica o comportamento de sensibilidade a maiúsculas quando rescuedDataColumn está habilitado. Se for verdade, resgate as colunas de dados cujos nomes diferem em maiúsculas e minúsculas do esquema; caso contrário, leia os dados sem distinguir entre maiúsculas e minúsculas.Valor predefinido: true |
rescuedDataColumnTipo: StringSe todos os dados que não podem ser interpretados devido a: uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo diferenciação de maiúsculas e minúsculas nas colunas) devem ser coletados numa coluna separada. Esta coluna é incluída por padrão ao usar o Auto Loader. Para obter mais detalhes, consulte O que é a coluna de dados resgatados?. COPY INTO (legado) não suporta a coluna de dados resgatados porque não é possível definir manualmente o esquema usando COPY INTO. A Databricks recomenda o uso do Auto Loader para a maioria dos cenários de ingestão.Valor padrão: Nenhum |
sep ou delimiterTipo: StringA string de separação entre colunas. Valor predefinido: "," |
skipRowsTipo: IntO número de linhas desde o 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 que não for ignorada nem comentada.Valor predefinido: 0 |
timestampFormatTipo: StringO formato para analisar sequências de carimbos de data/hora. Valor predefinido: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX] |
timeZoneTipo: StringO java.time.ZoneId a utilizar na análise de horários e datas.Valor padrão: Nenhum |
unescapedQuoteHandlingTipo: StringA estratégia para lidar com citações não escapadas. Opções permitidas:
Valor predefinido: STOP_AT_DELIMITER |
XML Opções
| Opção | Descrição | Âmbito de aplicação |
|---|---|---|
rowTag |
A etiqueta de linha dos arquivos XML a serem tratados como uma linha. No exemplo XML <books> <book><book>...<books>, o valor apropriado é book. Esta é uma opção necessária. |
ler |
samplingRatio |
Define uma fração de linhas usadas para inferência de esquema. As funções internas XML ignoram essa opção. Padrão: 1.0. |
ler |
excludeAttribute |
Se os atributos devem ser excluídos em elementos. Padrão: false. |
ler |
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 campos malformados como null. Para manter registros corrompidos, você pode definir um string campo de tipo nomeado 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 columnNameOfCorruptRecord campo em um esquema de saída.DROPMALFORMED: Ignora registros corrompidos. Este modo não é suportado para funções incorporadas 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 do DataFrame resultante. Se false, todas as colunas resultantes são do string tipo. Predefinição:true. As funções internas XML ignoram essa opção. |
ler |
columnNameOfCorruptRecord |
Permite renomear o novo campo que contém uma cadeia de caracteres malformada criada porPERMISSIVE modo. Padrão: spark.sql.columnNameOfCorruptRecord. |
ler |
attributePrefix |
O prefixo que diferencia atributos de elementos. Este será o prefixo para nomes de campos. A predefinição é _. Pode estar vazio para ler XML, mas não para escrever. |
ler, escrever |
valueTag |
A tag usada para os dados de caractere dentro de elementos que também têm atributo(s) ou elemento(s) filho(s). O usuário pode especificar o valueTag campo 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. Predefinição: _VALUE |
ler,escrever |
encoding |
Para leitura, decodifica os arquivos XML pelo tipo de codificação fornecido. Para escrever, especifica a codificação (charset) de arquivos XML salvos. As funções internas XML ignoram essa opção. Padrão: UTF-8. |
ler, escrever |
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 compostos apenas por espaços em branco são ignorados. |
ler |
rowValidationXSDPath |
Caminho para um arquivo XSD opcional que é usado para validar o XML para cada linha individualmente. As linhas que não validam são tratadas como erros de análise como acima. O XSD não afeta de outra forma o esquema fornecido ou inferido. | ler |
ignoreNamespace |
Se true, os prefixos dos namespaces em elementos e atributos XML são ignorados. 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, apenas os seus filhos legíveis. A análise XML não é sensível a namespaces, mesmo quando false. Padrão: false. |
ler |
timestampFormat |
Formato de data e hora personalizado que segue o padrão datetime. Isto aplica-se ao timestamp tipo. Padrão: yyyy-MM-dd'T'HH:mm:ss[.SSS][XXX]. |
ler, escrever |
timestampNTZFormat |
Cadeia de formato personalizada para timestamp sem fuso horário que segue o padrão de formato de data e hora. Isso se aplica ao tipo TimestampNTZType. Predefinição:yyyy-MM-dd'T'HH:mm:ss[.SSS] |
ler, escrever |
dateFormat |
Formato de data personalizado que segue o padrão de data e hora. Isto aplica-se ao tipo de data. Padrão: yyyy-MM-dd. |
ler, escrever |
locale |
Define uma localidade como uma marca de idioma no formato IETF BCP 47. Por exemplo, locale é utilizado durante a análise de datas e timestamps. Padrão: en-US. |
ler |
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. |
escrever |
declaration |
Conteúdo da declaração XML a ser gravada no início de cada ficheiro XML de saída, antes do rootTag. Por exemplo, um valor de foo causa <?xml foo?> a ser escrito. Defina como uma cadeia de caracteres vazia para suprimir. Predefinição: version="1.0"encoding="UTF-8" standalone="yes". |
escrever |
arrayElementName |
Nome do elemento XML que inclui cada elemento de uma coluna de valores de matriz ao escrever. Padrão: item. |
escrever |
nullValue |
Define a representação de cadeia de caracteres de um valor nulo. Padrão: string null. Quando isso é null, o analisador não escreve atributos e elementos para campos. |
ler, escrever |
compression |
Código de compressão para usar ao salvar no arquivo. Isto pode ser um dos nomes abreviados conhecidos que não diferenciam maiúsculas de minúsculas (none, bzip2, gzip, lz4, snappy, edeflate). As funções internas XML ignoram essa opção. Padrão: none. |
escrever |
validateName |
Caso seja verdadeiro, gera um erro quando ocorre uma falha na validação do nome do elemento XML. Por exemplo, nomes de campo SQL podem ter espaços, mas nomes de elementos XML não. Predefinição:true. |
escrever |
readerCaseSensitive |
Especifica o comportamento de diferenciação entre maiúsculas e minúsculas quando a rescueDataColumn está ativada. Se for verdade, resgate as colunas de dados cujos nomes diferem em maiúsculas e minúsculas do esquema; caso contrário, leia os dados sem distinguir entre maiúsculas e minúsculas. Padrão: true. |
ler |
rescuedDataColumn |
Se devem ser recolhidos todos os dados que não podem ser analisados devido a uma incompatibilidade de tipos de dados e de esquema (incluindo a capitalização das colunas) para uma coluna separada. Esta coluna é incluída por padrão ao usar o Auto Loader. Para obter mais detalhes, consulte O que é a coluna de dados resgatados?.COPY INTO (legado) não suporta a coluna de dados resgatados porque não é possível definir manualmente o esquema usando COPY INTO. A Databricks recomenda o uso do Auto Loader para a maioria dos cenários de ingestão.Padrão: Nenhum. |
ler |
singleVariantColumn |
Especifica o nome da coluna de variante única. Se esta opção for especificada para leitura, processe todo o registo XML numa única coluna Variant, com o valor do parâmetro de opção fornecido como o nome da coluna. Se esta opção for fornecida, escreva o valor da única coluna Variant em ficheiros XML. Padrão: none. |
ler, escrever |
PARQUET Opções
| Opção |
|---|
datetimeRebaseModeTipo: StringControla a rebase dos valores DATE e TIMESTAMP entre os calendários gregoriano Juliano e Proléptico. Valores permitidos: EXCEPTION, LEGACYeCORRECTED.Valor predefinido: LEGACY |
int96RebaseModeTipo: StringControla a rebase dos valores de carimbo de data/hora INT96 entre os calendários gregoriano Juliano e Proléptico. Valores permitidos: EXCEPTION, LEGACYeCORRECTED.Valor predefinido: LEGACY |
mergeSchemaTipo: BooleanSe deve inferir o esquema em vários arquivos e mesclar o esquema de cada arquivo. Valor predefinido: false |
readerCaseSensitiveTipo: BooleanEspecifica o comportamento de sensibilidade a maiúsculas quando rescuedDataColumn está habilitado. Se for verdade, resgate as colunas de dados cujos nomes diferem em maiúsculas e minúsculas do esquema; caso contrário, leia os dados sem distinguir entre maiúsculas e minúsculas.Valor predefinido: true |
rescuedDataColumnTipo: StringSe todos os dados que não podem ser interpretados devido a: uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo diferenciação de maiúsculas e minúsculas nas colunas) devem ser coletados numa coluna separada. Esta coluna é incluída por padrão ao usar o Auto Loader. Para obter mais detalhes, consulte O que é a coluna de dados resgatados?. COPY INTO (legado) não suporta a coluna de dados resgatados porque não é possível definir manualmente o esquema usando COPY INTO. A Databricks recomenda o uso do Auto Loader para a maioria dos cenários de ingestão.Valor padrão: Nenhum |
AVRO Opções
| Opção |
|---|
avroSchemaTipo: StringEsquema 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 Avro real. 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 padrão: Nenhum |
datetimeRebaseModeTipo: StringControla a rebase dos valores DATE e TIMESTAMP entre os calendários gregoriano Juliano e Proléptico. Valores permitidos: EXCEPTION, LEGACYeCORRECTED.Valor predefinido: LEGACY |
mergeSchemaTipo: BooleanSe deve inferir o esquema em vários arquivos e mesclar o esquema de cada arquivo. mergeSchema para Avro não flexibiliza tipos de dados.Valor predefinido: false |
readerCaseSensitiveTipo: BooleanEspecifica o comportamento de sensibilidade a maiúsculas quando rescuedDataColumn está habilitado. Se for verdade, resgate as colunas de dados cujos nomes diferem em maiúsculas e minúsculas do esquema; caso contrário, leia os dados sem distinguir entre maiúsculas e minúsculas.Valor predefinido: true |
rescuedDataColumnTipo: StringSe todos os dados que não podem ser interpretados devido a: uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo diferenciação de maiúsculas e minúsculas nas colunas) devem ser coletados numa coluna separada. Esta coluna é incluída por padrão ao usar o Auto Loader. COPY INTO (legado) não suporta a coluna de dados resgatados porque não é possível definir manualmente o esquema usando COPY INTO. A Databricks recomenda o uso do Auto Loader para a maioria dos cenários de ingestão.Para obter mais detalhes, consulte O que é a coluna de dados resgatados?. Valor padrão: Nenhum |
BINARYFILE Opções
Os ficheiros binários não têm quaisquer opções de configuração adicionais.
TEXT Opções
| Opção |
|---|
encodingTipo: StringO nome da codificação do separador de linha do arquivo TEXT. Para obter uma lista de opções, consulte java.nio.charset.Charset.O conteúdo do ficheiro não é afetado por esta opção e é lido as-is. Valor predefinido: UTF-8 |
lineSepTipo: StringUma cadeia de caracteres entre dois registros TEXT consecutivos. Valor padrão: Nenhum, que abrange \r, \r\n e \n |
wholeTextTipo: BooleanSe um arquivo deve ser lido como um único registro. Valor predefinido: false |
ORC Opções
| Opção |
|---|
mergeSchemaTipo: BooleanSe deve inferir o esquema em vários arquivos e mesclar o esquema de cada arquivo. Valor predefinido: false |
Opções específicas da nuvem
O Auto Loader fornece várias opções para configurar a infraestrutura de nuvem.
Opções específicas da AWS
Forneça as seguintes opções apenas se quiser cloudFiles.useNotifications = true e quiser que o Auto Loader configure os serviços de notificação por si:
| Opção |
|---|
cloudFiles.regionTipo: StringA região onde reside o bucket do S3 de origem e onde os serviços do AWS SNS e do SQS serão criados. Padrão: a região da instância do EC2. |
cloudFiles.restrictNotificationSetupToSameAWSAccountIdTipo: BooleanPermita apenas notificações de eventos de buckets do AWS S3 que estejam na mesma conta que o tópico SNS. Se for verdade, o Auto Loader só aceita notificações de eventos de buckets do AWS S3 na mesma conta do tópico do SNS. Quando false, a política de acesso não restringe as configurações de bucket entre contas e de tópicos do SNS. Isso é útil quando o tópico SNS e o caminho do bucket estão associados a contas diferentes.Disponível no Databricks Runtime 17.2 e superior. Predefinição: false |
|---|
Forneça a seguinte opção somente se você escolher cloudFiles.useNotifications = true e quiser que o Auto Loader use uma fila que você já configurou:
| Opção |
|---|
cloudFiles.queueUrlTipo: StringO URL da fila SQS. Se fornecido, o Auto Loader consome eventos diretamente dessa fila em vez de configurar os seus próprios serviços AWS SNS e SQS. Padrão: Nenhum |
Opções de autenticação da AWS
Forneça a seguinte opção de autenticação para usar uma credencial de serviço Databricks:
| Opção |
|---|
databricks.serviceCredentialTipo: StringO nome da sua credencial de serviço Databricks . Disponível no Databricks Runtime 16.1 e superior. Padrão: Nenhum |
Quando as credenciais de serviço Databricks ou funções do IAM não estão disponíveis, você pode fornecer as seguintes opções de autenticação:
| Opções |
|---|
cloudFiles.awsAccessKeyTipo: StringO ID da chave de acesso da AWS para o usuário. Deve ser fornecido com cloudFiles.awsSecretKey.Padrão: Nenhum |
cloudFiles.awsSecretKeyTipo: StringA chave de acesso secreta da AWS para o usuário. Deve ser fornecido com cloudFiles.awsAccessKey.Padrão: Nenhum |
cloudFiles.roleArnTipo: StringUm ARN de uma função do IAM para assumir, se necessário. A função pode ser assumida a partir do perfil de instância do cluster ou fornecendo credenciais com cloudFiles.awsAccessKey e cloudFiles.awsSecretKey.Padrão: Nenhum |
cloudFiles.roleExternalIdTipo: StringUm identificador a ser fornecido ao assumir uma função usando cloudFiles.roleArn.Padrão: Nenhum |
cloudFiles.roleSessionNameTipo: StringUm nome de sessão opcional para usar ao assumir uma função usando cloudFiles.roleArn.Padrão: Nenhum |
cloudFiles.stsEndpointTipo: StringUm endpoint opcional para aceder ao AWS STS ao assumir uma função usando cloudFiles.roleArn.Padrão: Nenhum |
Opções específicas do Azure
Você deve fornecer valores para todas as seguintes opções se especificar cloudFiles.useNotifications = true e quiser que o Auto Loader configure os serviços de notificação para você:
Se uma credencial de serviço Databricks não estiver disponível, você poderá fornecer as seguintes opções de autenticação:
| Opções |
|---|
cloudFiles.clientIdTipo: StringO ID do cliente ou ID do aplicativo da entidade de serviço. Padrão: Nenhum |
cloudFiles.clientSecretTipo: StringO segredo do cliente da principal entidade de serviço. Padrão: Nenhum |
cloudFiles.connectionStringTipo: StringA cadeia de conexão para a conta de armazenamento, com base na chave de acesso da conta ou na assinatura de acesso compartilhado (SAS). Padrão: Nenhum |
cloudFiles.tenantIdTipo: StringA ID de Locatário do Azure sob a qual a entidade de serviço é criada. Padrão: Nenhum |
Importante
A configuração de notificação automatizada está disponível nas regiões Azure China e Government com o Databricks Runtime 9.1 e posterior. Deve fornecer uma queueName opção para usar o Auto Loader com notificações de ficheiros nestas regiões para versões antigas do Databricks Runtime.
Forneça a seguinte opção somente se você escolher cloudFiles.useNotifications = true e quiser que o Auto Loader use uma fila que você já configurou:
| Opção |
|---|
cloudFiles.queueNameTipo: StringO nome da fila do Azure. Se for fornecida, a fonte de arquivos na nuvem consome diretamente eventos dessa fila em vez de configurar os seus próprios serviços Azure Event Grid e Queue Storage. Nesse caso, seu databricks.serviceCredential ou cloudFiles.connectionString requere apenas permissões de leitura na fila.Padrão: Nenhum |
Opções específicas do Google
O Auto Loader pode configurar automaticamente os serviços de notificação para si, ao utilizar as credenciais de serviço do Databricks (). A conta de serviço criada com a credencial de serviço Databricks exigirá as permissões especificadas em Configurar fluxos do Carregador Automático no modo de notificação de arquivo.
Se uma credencial de serviço Databricks não estiver disponível, você poderá usar as Contas de serviço do Google diretamente. Você pode configurar o seu cluster para adotar uma conta de serviço seguindo a configuração de serviço do Google ou fornecer as seguintes opções de autenticação diretamente:
| Opções |
|---|
cloudFiles.clientTipo: StringO ID do cliente da Conta de serviço do Google. Padrão: Nenhum |
cloudFiles.clientEmailTipo: StringO e-mail da Conta de Serviço do Google. Padrão: Nenhum |
cloudFiles.privateKeyTipo: StringA chave privada gerada para a Conta de Serviço do Google. Padrão: Nenhum |
cloudFiles.privateKeyIdTipo: StringO ID da chave privada gerada para a Conta de Serviço do Google. Padrão: Nenhum |
Forneça a seguinte opção somente se você escolher cloudFiles.useNotifications = true e quiser que o Auto Loader use uma fila que você já configurou:
| Opção |
|---|
cloudFiles.subscriptionTipo: StringO nome da assinatura do Google Cloud Pub/Sub. Se a fonte de arquivos na nuvem for fornecida, ela consome eventos dessa fila em vez de configurar seus próprios serviços de notificação do GCS e Google Cloud Pub/Sub. Padrão: Nenhum |