Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Definir e gerenciar classificadores

Modo de foco
Definir e gerenciar classificadores - AWS Glue

Um classificador lê os dados em uma armazenamento de dados. Se reconhecer o formato dos dados, ele gerará um esquema. O classificador também retornará um número de certeza para indicar o nível de certeza referente ao reconhecimento do formato.

O AWS Glue fornece um conjunto de classificadores integrados, mas você também pode criar classificadores personalizados. O AWS Glue invoca classificadores personalizados primeiro, na ordem especificada na definição do crawler. Dependendo dos resultados retornados dos classificadores personalizados, o AWS Glue também poderá invocar classificadores integrados. Se um classificador retornar certainty=1.0 durante o processamento, ele indicará que está 100% certo sobre a criação do esquema correto. Em seguida, o AWS Glue usa a saída desse classificador.

Se nenhum classificador retornar certainty=1.0, o AWS Glue usará a saída do classificador que tiver a maior certeza. Se nenhum classificador retornar uma certeza maior que 0.0, o AWS Glue retornará a string de classificação padrão UNKNOWN.

Quando devo usar um classificador?

Você deve usar classificadores ao fazer crawling em um armazenamento de dados para definir tabelas de metadados no AWS Glue Data Catalog. Você pode configurar seu crawler com um conjunto de classificadores ordenados. Quando o crawler invoca um classificador, o classificador determina se os dados são reconhecidos. Se o classificador não puder reconhecer os dados ou não estiver 100% certo, o crawler chamará o próximo classificador na lista para tentar reconhecer os dados.

Para obter mais informações sobre como criar um classificador usando o console do AWS Glue, consulte Criar classificadores usando o console do AWS Glue.

Classificadores personalizados

A saída de um classificador inclui uma string que indica a classificação ou o formato do arquivo (por exemplo, json) e o esquema dele. Para classificadores personalizados, você define a lógica de criação do esquema com base no tipo de classificador. Os tipos de classificadores incluem a definição de esquemas com base em padrões grok, tags XML e caminhos JSON.

Se você alterar uma definição de classificador, os dados que foram rastreados anteriormente usando o classificador não serão reclassificados. Um crawler monitora os dados rastreados anteriormente. Novos dados são classificados com o classificador atualizado, o que pode resultar em um esquema atualizado. Se o esquema de seus dados evoluiu, atualize o classificador para considerar quaisquer alterações de esquema quando o crawler for executado. Para reclassificar dados para corrigir um classificador incorreto, crie um novo crawler com o classificador atualizado.

Para obter mais informações sobre como criar classificadores personalizados no AWS Glue, consulte Escrever classificadores personalizados para diversos formatos de dados.

nota

Se seu formato de dados for reconhecido por um dos classificadores integrados, você não precisará criar um classificador personalizado.

Classificadores integrados

O AWS Glue fornece classificadores integrados para vários formatos, incluindo JSON, CSV, logs da web e diversos sistemas de banco de dados.

Se o AWS Glue não encontrar um classificador personalizado adequado para o formato de dados de entrada com 100% de certeza, ele invocará os classificadores integrados na ordem exibida na tabela a seguir. Os classificadores integrados retornam um resultado para indicar se o formato é correspondente (certainty=1.0) ou não (certainty=0.0). O primeiro classificador que tiver certainty=1.0 fornecerá a string de classificação e o esquema para uma tabela de metadados no Data Catalog.

Tipo de classificador String de classificação Observações
Apache Avro avro Lê o esquema no início do arquivo para determinar o formato.
Apache ORC orc Lê os metadados do arquivo para determinar o formato.
Apache Parquet parquet Lê o esquema no final do arquivo para determinar o formato.
JSON json Lê o início do arquivo para determinar o formato.
JSON binário bson Lê o início do arquivo para determinar o formato.
XML xml Lê o início do arquivo para determinar o formato. O AWS Glue determina o esquema de tabela com base em tags XML no documento.

Para obter informações sobre como criar um classificador XML personalizado para especificar linhas no documento, consulte Gravar classificadores XML personalizados.

Amazon Ion ion Lê o início do arquivo para determinar o formato.
Log do Apache combinado combined_apache Determina os formatos de log por meio de um padrão grok.
Log do Apache apache Determina os formatos de log por meio de um padrão grok.
Log de kernel do Linux linux_kernel Determina os formatos de log por meio de um padrão grok.
Log da Microsoft microsoft_log Determina os formatos de log por meio de um padrão grok.
Log do Ruby ruby_logger Lê o início do arquivo para determinar o formato.
Log do Squid 3.x squid Lê o início do arquivo para determinar o formato.
Log de monitoramento do Redis redismonlog Lê o início do arquivo para determinar o formato.
Log do Redis redislog Lê o início do arquivo para determinar o formato.
CSV csv Verifica os seguintes delimitadores: vírgula (,), pipe (|), tabulação (\t), ponto e vírgula (;) e Ctrl+A (\u0001). Ctrl+A é o caractere de controle Unicode para Start Of Heading.
Amazon Redshift redshift Usa conexão JDBC para importar metadados.
MySQL mysql Usa conexão JDBC para importar metadados.
PostgreSQL postgresql Usa conexão JDBC para importar metadados.
Banco de dados Oracle oracle Usa conexão JDBC para importar metadados.
Microsoft SQL Server sqlserver Usa conexão JDBC para importar metadados.
Amazon DynamoDB dynamodb Lê dados da tabela do DynamoDB.

Os arquivos nos seguintes formatos compactados podem ser classificados:

  • (com suporte para arquivos ZIP contendo apenas um arquivo). Observe que o formato Zip não tem bom suporte em outros serviços (por causa do arquivamento).

  • BZIP

  • GZIP

  • LZ4

  • Snappy (compatível com os formatos Snappy Standard e Snappy de Hadoop nativo)

Classificador CSV integrado

O classificador CSV integrado analisa o conteúdo do arquivo CSV para determinar o esquema de uma tabela do AWS Glue. Esse classificador verifica os seguintes delimitadores:

  • Vírgula (,)

  • Barra vertical (|)

  • Tabulação (\t)

  • Ponto e vírgula (;)

  • Ctrl+A (\u0001)

    Ctrl+A é o caractere de controle Unicode para Start Of Heading.

Para ser classificado como CSV, o esquema da tabela deve ter pelo menos duas colunas e duas linhas de dados. O classificador CSV usa um número de heurística para determinar se um cabeçalho está presente em um determinado arquivo. Se o classificador não puder determinar um cabeçalho a partir da primeira linha de dados, os cabeçalhos das colunas serão exibidos como col1, col2, col3 e assim por diante. O classificador CSV integrado determina se é necessário inferir um cabeçalho avaliando as seguintes características do arquivo:

  • Cada coluna em um possível cabeçalho é analisada como um tipo de dados STRING.

  • Exceto pela última coluna, todas as colunas em um possível cabeçalho têm conteúdo com menos de 150 caracteres. Para permitir um delimitador final, a última coluna pode ficar vazia em todo o arquivo.

  • Cada coluna em um possível cabeçalho deve atender aos requisitos do AWS Glue regex para um nome de coluna.

  • A linha de cabeçalho deve ser suficientemente diferente das linhas de dados. Para determinar isso, uma ou mais linhas devem ser analisadas como diferentes do tipo STRING. Se todas as colunas forem do tipo STRING, a primeira linha de dados não será suficientemente diferente das linhas subsequentes a serem usadas como cabeçalho.

nota

Se o classificador CSV integrado não criar sua tabela do AWS Glue como você deseja, é possível usar uma das seguintes alternativas:

  • Altere os nomes das colunas no Data Catalog, defina SchemaChangePolicy como LOG e a configuração de saída da partição como InheritFromTable para futuras execuções do crawler.

  • Crie um classificador grok personalizado para analisar os dados e atribuir as colunas desejadas.

  • O classificador CSV integrado cria tabelas fazendo referência ao LazySimpleSerDe como a biblioteca de serialização, que é uma boa opção para inferência de tipos. No entanto, se os dados CSV contiverem strings entre aspas, edite a definição da tabela e altere a biblioteca SerDe para OpenCSVSerDe. Ajuste os tipos inferidos para STRING, defina SchemaChangePolicy como LOG e defina a configuração de saída das partições como InheritFromTable para futuras execuções do crawler. Para mais informações sobre bibliotecas SerDe, consulte Referência de SerDe no Manual do usuário do Amazon Athena.

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.