Opções do Carregador Automático
As opções de configuração específicas para a cloudFiles
origem são prefixadas para cloudFiles
que estejam em um namespace separado de outras opções de origem 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 listagem de diretório ou modo de notificação de arquivo.
Opção |
---|
cloudFiles.allowOverwrites Tipo: Boolean Se as alterações do arquivo de diretório de entrada devem ser permitidas para substituir os dados existentes. Há algumas ressalvas em relação à ativação dessa configuração. Consulte O Auto Loader processa o arquivo novamente quando o arquivo é anexado ou substituído? para obter detalhes. Valor predefinido: false |
cloudFiles.backfillInterval Tipo: Interval String Auto Loader pode acionar backfills assíncronos em um determinado intervalo, por exemplo 1 day , para encher uma vez por dia, ou 1 week para encher uma vez por semana. Os sistemas de notificação de eventos de arquivo não garantem 100% de entrega de todos os arquivos que foram carregados, portanto, você pode usar backfills para garantir que todos os arquivos eventualmente sejam processados, disponíveis no Databricks Runtime 8.4 (EoS) e acima.Valor padrão: Nenhum |
cloudFiles.format Tipo: String O formato de arquivo de dados no caminho de origem. Os valores permitidos incluem: - avro : Arquivo Avro- binaryFile : Arquivo binário- csv : Ler ficheiros CSV- json : Arquivo JSON- orc : Arquivo ORC- parquet : Ler arquivos do Parquet usando o Azure Databricks- text : Arquivo de textoValor padrão: Nenhum (opção obrigatória) |
cloudFiles.includeExistingFiles Tipo: Boolean Se 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. Valor predefinido: true |
cloudFiles.inferColumnTypes Tipo: Boolean Se é necessário inferir tipos exatos de coluna ao aproveitar 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. Valor predefinido: false |
cloudFiles.maxBytesPerTrigger Tipo: Byte String O número máximo de novos bytes a serem processados em cada gatilho. 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 o , o Azure Databricks consome até o limite inferior de cloudFiles.maxFilesPerTrigger ou cloudFiles.maxBytesPerTrigger , o que for atingido primeiro. Esta opção não tem efeito quando usada com Trigger.Once() (Trigger.Once() foi preterido).Valor padrão: Nenhum |
cloudFiles.maxFileAge Tipo: Interval String Por 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 retenção de eventos para obter mais detalhes. Ajustar de forma muito agressiva pode causar problemas de qualidade de cloudFiles.maxFileAge dados, como ingestão duplicada ou arquivos ausentes. Portanto, a Databricks recomenda uma configuração conservadora para cloudFiles.maxFileAge o , como 90 dias, que é semelhante ao que soluções comparáveis de ingestão de dados recomendam.Valor padrão: Nenhum |
cloudFiles.maxFilesPerTrigger Tipo: Integer O número máximo de novos arquivos a serem processados em cada gatilho. Quando usado em conjunto com cloudFiles.maxBytesPerTrigger o , o Azure Databricks consome até o limite inferior de cloudFiles.maxFilesPerTrigger ou cloudFiles.maxBytesPerTrigger , o que for atingido primeiro. Esta opção não tem efeito quando usada com Trigger.Once() (preterido).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 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 , b e c . Por padrão, 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 você não quiser essas colunas como parte do seu esquema, você pode especificar "" para ignorar essas colunas. Além disso, você pode usar essa opção quando quiser que as colunas infiram o caminho do arquivo em estruturas de diretório complexas, como o 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 Especificando cloudFiles.partitionColumns como year,month,day retornaráyear=2022 para file1.csv , mas as month colunas e day serão null .month e day será analisado corretamente para file2.csv e file3.csv .Valor padrão: Nenhum |
cloudFiles.schemaEvolutionMode Tipo: String O 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. Valor padrão: "addNewColumns" quando um esquema não é fornecido."none" caso contrário. |
cloudFiles.schemaHints Tipo: String Informações de esquema que você fornece ao Auto Loader durante a inferência do esquema. Consulte as dicas de esquema para obter mais detalhes. Valor padrão: 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 deve usar um globber estrito que corresponda ao comportamento de globbing padrão 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. Valor predefinido: false |
cloudFiles.validateOptions Tipo: Boolean Se deseja validar as opções do Auto Loader e retornar um erro para opções desconhecidas ou inconsistentes. Valor predefinido: true |
Opções de listagem de diretório
As opções a seguir são relevantes para o modo de listagem de diretórios.
Opção |
---|
cloudFiles.useIncrementalListing (preterido)Tipo: String Esta caraterística foi preterida. O Databricks recomenda o uso do modo de notificação 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 Gen2 ( abfss:// ), S3 (s3:// ) e GCS (gs:// ).Disponível em Databricks Runtime 9.1 LTS e superior. Valor predefinido: auto Valores 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ção |
---|
cloudFiles.fetchParallelism Tipo: Integer Número de threads a serem usados ao buscar mensagens do serviço de fila. Valor padrão: 1 |
cloudFiles.pathRewrites Tipo: Uma cadeia de caracteres JSON Necessário somente se você especificar um queueUrl que receba notificações de arquivo de vários buckets do 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 com o bucket/key ponto de montagem. Apenas prefixos podem ser reescritos. Por exemplo, para a configuração{"<databricks-mounted-bucket>/path": "dbfs:/mnt/data-warehouse"} , o caminhos3://<databricks-mounted-bucket>/path/2017/08/fileA.json é reescrito para dbfs:/mnt/data-warehouse/2017/08/fileA.json .Valor padrão: Nenhum |
cloudFiles.resourceTag Tipo: 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 Nomeando filas e metadados e a cobertura de assinaturas de properties.labels 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 Relatando o uso com rótulos. (1) Valor padrão: Nenhum |
cloudFiles.useNotifications Tipo: Boolean Se deve usar o modo de notificação de arquivo para determinar quando há novos arquivos. Se false , use o modo de listagem de diretório. Consulte Comparar modos de deteção de ficheiros do carregador automático.Valor predefinido: false |
(1) O Auto Loader adiciona os seguintes pares de etiquetas chave-valor por defeito, 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 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
, , PARQUET
AVRO
, TEXT
, BINARYFILE
e ORC
arquivos.
- Opções genéricas
JSON
OpçõesCSV
OpçõesXML
OpçõesPARQUET
OpçõesAVRO
OpçõesBINARYFILE
OpçõesTEXT
OpçõesORC
Opções
Opções genéricas
As opções a seguir se aplicam a todos os formatos de arquivo.
Opção |
---|
ignoreCorruptFiles Tipo: Boolean Se 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 |
ignoreMissingFiles Tipo: Boolean Se deve 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 (true for COPY INTO ) |
modifiedAfter Tipo: 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 Tipo: 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 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 padrão: Nenhum |
recursiveFileLookup Tipo: Boolean Se a inferência de partição deve ser ignorada durante a inferência de esquema. Isso não afeta quais arquivos são carregados. Valor predefinido: false |
JSON
Opções
Opção |
---|
allowBackslashEscapingAnyCharacter Tipo: Boolean Se deve permitir que as barras invertidas escapem de qualquer personagem que a consiga. Se não estiver habilitado, somente os caracteres explicitamente listados pela especificação JSON poderão ser escapados. Valor predefinido: false |
allowComments Tipo: Boolean Se 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 |
allowNonNumericNumbers Tipo: Boolean Se o conjunto de tokens não-a-number ( NaN ) deve ser permitido como valores de número flutuante legal.Valor predefinido: true |
allowNumericLeadingZeros Tipo: Boolean Permitir ou não que números integrais comecem com zeros adicionais (ignorantes) (por exemplo, 000001 ).Valor predefinido: false |
allowSingleQuotes Tipo: Boolean Se deve permitir o uso de aspas simples (apóstrofo, caractere '\' ) para citar cadeias de caracteres (nomes e valores String).Valor predefinido: true |
allowUnquotedControlChars Tipo: Boolean Se 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 |
allowUnquotedFieldNames Tipo: Boolean Se 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 |
badRecordsPath Tipo: String O caminho para armazenar arquivos para gravar as informações sobre registros JSON incorretos. Valor padrão: 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 predefinido: _corrupt_record |
dateFormat Tipo: String O formato para analisar cadeias de caracteres de data. Valor predefinido: yyyy-MM-dd |
dropFieldIfAllNull Tipo: Boolean Se 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 charset Tipo: String O nome da codificação dos arquivos JSON. Consulte java.nio.charset.Charset a lista de opções. Você não pode usar UTF-16 e UTF-32 quando multiline é true .Valor predefinido: UTF-8 |
inferTimestamp Tipo: Boolean Se deve tentar inferir cadeias de caracteres de carimbo de data/hora como um TimestampType arquivo . Quando definido comotrue , a inferência do esquema pode levar visivelmente mais tempo. Você deve habilitar cloudFiles.inferColumnTypes o uso com o Auto Loader.Valor predefinido: false |
lineSep Tipo: String Uma cadeia de caracteres entre dois registros JSON consecutivos. Valor padrão: Nenhum, que abrange \r , \r\n e \n |
locale Tipo: String Um java.util.Locale identificador. Influencia a data padrão, o carimbo de data/hora e a análise decimal dentro do JSON.Valor predefinido: US |
mode Tipo: String Modo de análise em torno da manipulação de registros malformados. Um dos 'PERMISSIVE' ,'DROPMALFORMED' , ou 'FAILFAST' .Valor predefinido: PERMISSIVE |
multiLine Tipo: Boolean Se os registros JSON abrangem várias linhas. Valor predefinido: false |
prefersDecimal Tipo: Boolean Tenta inferir cadeias de caracteres em DecimalType vez de float ou double type quando possível. Você também deve usar a inferência de esquema, habilitandoinferSchema ou usando cloudFiles.inferColumnTypes com Auto Loader.Valor predefinido: false |
primitivesAsString Tipo: Boolean Se deve inferir tipos primitivos como números e booleanos como StringType .Valor predefinido: 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 caso do esquema; caso contrário, leia os dados de forma que não diferencie maiúsculas de minúsculas. Disponível no Databricks Runtime13.3 e superior. Valor predefinido: true |
rescuedDataColumn Tipo: String Se todos os dados que não podem ser analisados devem ser analisados devido a uma incompatibilidade de tipo de dados ou incompatibilidade de esquema (incluindo caixa de coluna) 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?. Valor padrão: Nenhum |
singleVariantColumn Tipo: String Se deseja ingerir o documento JSON inteiro, analisado em uma única coluna Variant com a cadeia de caracteres fornecida como o nome da coluna. Se desativado, os campos JSON serão ingeridos em suas próprias colunas. Valor padrão: Nenhum |
timestampFormat Tipo: String O formato para analisar cadeias de caracteres de carimbo de data/hora. Valor predefinido: 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 padrão: Nenhum |
CSV
Opções
Opção |
---|
badRecordsPath Tipo: String O caminho para armazenar arquivos para gravar as informações sobre registros CSV incorretos. Valor padrão: Nenhum |
charToEscapeQuoteEscaping Tipo: Char O personagem usado para escapar do personagem usado para escapar de citações. Por exemplo, para o seguinte registo: [ " a\\", b ] - Se o caractere a escapar '\' estiver indefinido, o registro não será analisado. O analisador lerá caracteres: [a],[\],["],[,],[ ],[b] e lançará um erro porque não consegue encontrar uma citação de fechamento.- Se o caractere a escapar for '\' definido como '\' , o registro será lido com 2 valores: [a\] e [b] .Valor predefinido: '\0' |
columnNameOfCorruptRecord > [! NOTA] >> Suportado para Auto Loader. Não suportado para 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 predefinido: _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 o salto de comentários.Valor predefinido: '\u0000' |
dateFormat Tipo: String O formato para analisar cadeias de caracteres de data. Valor predefinido: yyyy-MM-dd |
emptyValue Tipo: String Representação de cadeia de caracteres de um valor vazio. Valor predefinido: "" |
encoding ou charset Tipo: String O nome da codificação dos arquivos CSV. Consulte java.nio.charset.Charset a lista de opções. UTF-16 e UTF-32 não pode ser usado quando multiline é true .Valor predefinido: UTF-8 |
enforceSchema Tipo: Boolean Se 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 |
escape Tipo: Char O caractere de escape a ser usado ao analisar os dados. Valor predefinido: '\' |
header Tipo: Boolean Se 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 |
ignoreLeadingWhiteSpace Tipo: Boolean Se os espaços em branco à esquerda devem ser ignorados para cada valor analisado. Valor predefinido: false |
ignoreTrailingWhiteSpace Tipo: Boolean Se deve ignorar espaços em branco à direita para cada valor analisado. Valor predefinido: false |
inferSchema Tipo: Boolean Se é 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 . Para Auto Loader, use cloudFiles.inferColumnTypes em vez disso.Valor predefinido: false |
lineSep Tipo: String Uma cadeia de caracteres entre dois registros CSV consecutivos. Valor padrão: Nenhum, que abrange \r , \r\n e \n |
locale Tipo: String Um java.util.Locale identificador. Influencia a data padrão, o carimbo de data/hora e a análise decimal dentro do CSV.Valor predefinido: US |
maxCharsPerColumn Tipo: 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 é , o -1 que significa ilimitado.Valor predefinido: -1 |
maxColumns Tipo: Int O limite rígido de quantas colunas um registro pode ter. Valor predefinido: 20480 |
mergeSchema Tipo: Boolean Se 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 |
mode Tipo: String Modo de análise em torno da manipulação de registros malformados. Um dos 'PERMISSIVE' ,'DROPMALFORMED' 'FAILFAST' e .Valor predefinido: PERMISSIVE |
multiLine Tipo: Boolean Se os registros CSV abrangem várias linhas. Valor predefinido: false |
nanValue Tipo: String A representação de cadeia de caracteres de um valor diferente de um número ao analisar FloatType e DoubleType colunas.Valor predefinido: "NaN" |
negativeInf Tipo: String A representação de cadeia de caracteres do infinito negativo ao analisar FloatType ou DoubleType colunas.Valor predefinido: "-Inf" |
nullValue Tipo: String Representação de cadeia de caracteres de um valor nulo. Valor predefinido: "" |
parserCaseSensitive (preterido)Tipo: Boolean Durante a leitura de arquivos, se as colunas declaradas no cabeçalho devem ser alinhadas com o esquema de forma sensível a maiúsculas e minúsculas. Isso é true por padrão para o Auto Loader. As colunas que diferem por maiúsculas e minúsculas rescuedDataColumn serão resgatadas no se habilitado. Esta opção foi preterida em favor do readerCaseSensitive .Valor predefinido: false |
positiveInf Tipo: String A representação de cadeia de caracteres do infinito positivo ao analisar FloatType ou DoubleType colunas.Valor predefinido: "Inf" |
preferDate Tipo: 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 usandocloudFiles.inferColumnTypes com Auto Loader.Valor predefinido: true |
quote Tipo: Char O caractere usado para escapar de valores onde o delimitador de campo é parte do valor. Valor predefinido: " |
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 caso do esquema; caso contrário, leia os dados de forma que não diferencie maiúsculas de minúsculas.Valor predefinido: true |
rescuedDataColumn Tipo: String Se todos os dados que não podem ser analisados devem ser analisados devido a: uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo caixa de coluna) 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?. Valor padrão: Nenhum |
sep ou delimiter Tipo: String A cadeia de caracteres separadora entre colunas. Valor predefinido: "," |
skipRows Tipo: Int O 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 não ignorada e não comentada.Valor predefinido: 0 |
timestampFormat Tipo: String O formato para analisar cadeias de caracteres de carimbo de data/hora. Valor predefinido: 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 padrão: Nenhum |
unescapedQuoteHandling Tipo: String A estratégia para lidar com citações sem escapar. Opções permitidas: - STOP_AT_CLOSING_QUOTE : Se forem encontradas cotações sem escape na entrada, acumule o caractere de cotação e prossiga analisando o valor como um valor cotado, até que uma cotação de fechamento seja encontrada.- BACK_TO_DELIMITER : Se forem encontradas cotações sem escape na entrada, considere o valor como um valor não cotado. Isso fará com que o analisador acumule todos os caracteres do valor analisado atual 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 terminação de linha seja encontrado.- STOP_AT_DELIMITER : Se forem encontradas cotações sem escape na entrada, considere o valor como um valor não cotado. Isso fará com que o analisador acumule todos os caracteres até que o delimitador definido por sep , ou uma terminação de linha seja encontrada na entrada.- SKIP_VALUE : Se forem encontradas aspas sem escape na entrada, o conteúdo analisado para o valor dado será ignorado (até que o próximo delimitador seja encontrado) e o valor definido em nullValue será produzido.- RAISE_ERROR : Se forem encontradas cotações sem escape na entrada, umTextParsingException serão atirados.Valor predefinido: STOP_AT_DELIMITER |
XML
Opções
Opção | Description | Scope |
---|---|---|
rowTag |
A marca 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. |
lido |
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 . |
lido |
excludeAttribute |
Se os atributos devem ser excluídos em elementos. Padrão: false . |
lido |
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. |
lido |
inferSchema |
If true , tenta inferir um tipo apropriado para cada coluna 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. |
lido |
columnNameOfCorruptRecord |
Permite renomear o novo campo que contém uma cadeia de caracteres malformada criada porPERMISSIVE modo. Padrão: spark.sql.columnNameOfCorruptRecord . |
lido |
attributePrefix |
O prefixo para atributos para diferenciar 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 somente de espaço em branco são ignorados. |
lido |
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 o esquema fornecido ou inferido. | lido |
ignoreNamespace |
Se true , os prefixos dos namespaces em elementos e atributos XML forem 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 rowTag no elemento , apenas seus filhos de leitura. A análise XML não reconhece namespace, mesmo que false . Padrão: false . |
lido |
timestampFormat |
Cadeia de caracteres de formato de carimbo de data/hora personalizada que segue o formato de 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 caracteres de formato personalizado para carimbo de data/hora sem fuso horário que segue o formato de padrão datetime. Isso se aplica ao tipo TimestampNTZType. Predefinição:yyyy-MM-dd'T'HH:mm:ss[.SSS] |
ler, escrever |
dateFormat |
Cadeia de caracteres de formato de data personalizada que segue o formato de padrão datetime. 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 é usado durante a análise de datas e carimbos de data/hora. Padrão: en-US . |
lido |
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 . |
escrita |
declaration |
Conteúdo da declaração XML a ser gravada no início de cada arquivo XML de saída, antes do rootTag arquivo . Por exemplo, um valor de foo causas <?xml foo?> a serem gravadas. Defina como uma cadeia de caracteres vazia para suprimir. Predefinição: version="1.0" encoding="UTF-8" standalone="yes" . |
escrita |
arrayElementName |
Nome do elemento XML que inclui cada elemento de uma coluna com valor de matriz ao escrever. Padrão: item . |
escrita |
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. Este 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 . |
escrita |
validateName |
Se verdadeiro, lança um erro na falha de 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 . |
escrita |
readerCaseSensitive |
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 caso do esquema; caso contrário, leia os dados de forma que não diferencie maiúsculas de minúsculas. Padrão: true . |
lido |
rescuedDataColumn |
Se todos os dados que não podem ser analisados devem ser analisados devido a uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo caixa de coluna) 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?. Padrão: Nenhum. | lido |
PARQUET
Opções
Opção |
---|
datetimeRebaseMode Tipo: String Controla a rebase dos valores DATE e TIMESTAMP entre os calendários gregoriano Juliano e Proléptico. Valores permitidos: EXCEPTION , LEGACY eCORRECTED .Valor predefinido: LEGACY |
int96RebaseMode Tipo: String Controla a rebase dos valores de carimbo de data/hora INT96 entre os calendários gregoriano Juliano e Proléptico. Valores permitidos: EXCEPTION , LEGACY eCORRECTED .Valor predefinido: LEGACY |
mergeSchema Tipo: Boolean Se deve inferir o esquema em vários arquivos e mesclar o esquema de cada arquivo. Valor predefinido: 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 caso do esquema; caso contrário, leia os dados de forma que não diferencie maiúsculas de minúsculas.Valor predefinido: true |
rescuedDataColumn Tipo: String Se todos os dados que não podem ser analisados devem ser analisados devido a: uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo caixa de coluna) 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?. Valor padrão: 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 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 |
datetimeRebaseMode Tipo: String Controla a rebase dos valores DATE e TIMESTAMP entre os calendários gregoriano Juliano e Proléptico. Valores permitidos: EXCEPTION , LEGACY eCORRECTED .Valor predefinido: 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 tipos de dados.Valor predefinido: 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 caso do esquema; caso contrário, leia os dados de forma que não diferencie maiúsculas de minúsculas.Valor predefinido: true |
rescuedDataColumn Tipo: String Se todos os dados que não podem ser analisados devem ser analisados devido a: uma incompatibilidade de tipo de dados e incompatibilidade de esquema (incluindo caixa de coluna) 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?. 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 |
---|
encoding Tipo: String O nome da codificação dos arquivos TEXT. Consulte java.nio.charset.Charset a lista de opções.Valor predefinido: UTF-8 |
lineSep Tipo: String Uma cadeia de caracteres entre dois registros TEXT consecutivos. Valor padrão: Nenhum, que abrange \r , \r\n e \n |
wholeText Tipo: Boolean Se um arquivo deve ser lido como um único registro. Valor predefinido: 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 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 a seguinte opção somente se você escolher cloudFiles.useNotifications
= true
e quiser que o Auto Loader configure os serviços de notificação para você:
Opção |
---|
cloudFiles.region Tipo: String A região onde reside o bucket do S3 de origem e onde os serviços do AWS SNS e do SQS serão criados. Valor padrão: a região da instância do EC2. |
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.queueUrl Tipo: String A URL da fila SQS. Se fornecido, o Auto Loader consome diretamente eventos dessa fila em vez de configurar seus próprios serviços do AWS SNS e SQS. Valor padrão: Nenhum |
Você pode usar as opções a seguir para fornecer credenciais para acessar o AWS SNS e o SQS quando as funções do IAM não estiverem disponíveis ou quando você estiver ingerindo dados de nuvens diferentes.
Opção |
---|
cloudFiles.awsAccessKey Tipo: String O ID da chave de acesso da AWS para o usuário. Deve ser fornecido com cloudFiles.awsSecretKey .Valor padrão: Nenhum |
cloudFiles.awsSecretKey Tipo: String A chave de acesso secreta da AWS para o usuário. Deve ser fornecido com cloudFiles.awsAccessKey .Valor padrão: Nenhum |
cloudFiles.roleArn Tipo: String O ARN de um papel do IAM a assumir. A função pode ser assumida a partir do perfil de instância do cluster ou fornecendo credenciais com cloudFiles.awsAccessKey e cloudFiles.awsSecretKey .Valor padrão: Nenhum |
cloudFiles.roleExternalId Tipo: String Um identificador a ser fornecido ao assumir uma função usando cloudFiles.roleArn o .Valor padrão: Nenhum |
cloudFiles.roleSessionName Tipo: String Um nome de sessão opcional para usar ao assumir uma função usando cloudFiles.roleArn .Valor padrão: Nenhum |
cloudFiles.stsEndpoint Tipo: String Um endpoint opcional para acessar o AWS STS ao assumir uma função usando cloudFiles.roleArn o .Valor 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ê:
Opção |
---|
cloudFiles.clientId Tipo: String O ID do cliente ou ID do aplicativo da entidade de serviço. Valor padrão: Nenhum |
cloudFiles.clientSecret Tipo: String O segredo do cliente da entidade de serviço. Valor padrão: Nenhum |
cloudFiles.connectionString Tipo: String A cadeia de conexão para a conta de armazenamento, com base na chave de acesso da conta ou na assinatura de acesso compartilhado (SAS). Valor padrão: Nenhum |
cloudFiles.resourceGroup Tipo: String O Grupo de Recursos do Azure sob o qual a conta de armazenamento é criada. Valor padrão: Nenhum |
cloudFiles.subscriptionId Tipo: String A ID de Assinatura do Azure sob a qual o grupo de recursos é criado. Valor padrão: Nenhum |
cloudFiles.tenantId Tipo: String A ID de Locatário do Azure sob a qual a entidade de serviço é criada. Valor 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. Você deve fornecer um queueName
para usar o Auto Loader com notificações de arquivo nessas regiões para versões DBR mais antigas.
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.queueName Tipo: String O nome da fila do Azure. Se fornecida, a fonte de arquivos na nuvem consome diretamente eventos dessa fila em vez de configurar seus próprios serviços de Grade de Eventos e Armazenamento de Filas do Azure. Nesse caso, você cloudFiles.connectionString requer apenas permissões de leitura na fila.Valor padrão: 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 do 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 Auto Loader?. Caso contrário, você pode fornecer as seguintes opções de autenticação se quiser que o Auto Loader configure os serviços de notificação para você.
Opção |
---|
cloudFiles.client Tipo: String O ID do cliente da Conta de serviço do Google. Valor padrão: Nenhum |
cloudFiles.clientEmail Tipo: String O e-mail da Conta de Serviço do Google. Valor padrão: Nenhum |
cloudFiles.privateKey Tipo: String A chave privada gerada para a Conta de Serviço do Google. Valor padrão: Nenhum |
cloudFiles.privateKeyId Tipo: String O ID da chave privada gerada para a Conta de Serviço do Google. Valor padrão: Nenhum |
cloudFiles.projectId Tipo: String A id do projeto em que o bucket GCS está. A subscrição Google Cloud Pub/Sub também será criada no âmbito deste projeto. Valor 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.subscription Tipo: String O nome da assinatura do Google Cloud Pub/Sub. Se fornecida, a fonte de arquivos na nuvem consome eventos dessa fila em vez de configurar seus próprios serviços GCS Notification e Google Cloud Pub/Sub. Valor padrão: Nenhum |