Especificando o número máximo de tabelas que o rastreador pode criar - AWS Glue

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Especificando o número máximo de tabelas que o rastreador pode criar

Opcionalmente, você pode especificar o número máximo de tabelas que o rastreador pode criar especificando a por meio TableThreshold do console AWS Glue ou. CLI Se as tabelas detectadas pelo crawler durante o rastreamento forem maiores que esse valor de entrada, o rastreamento falhará e nenhum dado será gravado no Data Catalog.

Esse parâmetro é útil quando as tabelas que seriam detectadas e criadas pelo crawler são muito maiores do que o esperado. Pode haver vários motivos para isso, por exemplo:

  • Ao usar um AWS Glue trabalho para preencher seus locais do Amazon S3, você pode acabar com arquivos vazios no mesmo nível de uma pasta. Nesses casos, quando você executa um crawler nesse local do Amazon S3, o crawler cria várias tabelas devido a arquivos e pastas presentes no mesmo nível.

  • Se você não configurar "TableGroupingPolicy": "CombineCompatibleSchemas", pode acabar com mais tabelas do que o esperado.

Você especifica o TableThreshold como um valor inteiro maior que 0. Esse valor é configurado para cada crawler. Ou seja, esse valor é considerado para cada rastreamento. Por exemplo: um crawler tem o valor TableThreshold definido como 5. Em cada rastreamento, AWS Glue compara o número de tabelas detectadas com esse valor limite da tabela (5) e, se o número de tabelas detectadas for menor que 5, AWS Glue grava as tabelas no Catálogo de Dados e, caso contrário, o rastreamento falhará sem gravar no Catálogo de Dados.

Console

Para configurar TableThreshold usando o AWS console:

A seção Saída e agendamento do AWS console mostrando o parâmetro Limite máximo da tabela.
CLI

Para definir TableThreshold usando o AWS CLI:

"{"Version":1.0, "CrawlerOutput": {"Tables":{"AddOrUpdateBehavior":"MergeNewColumns", "TableThreshold":5}}}";

As mensagens de erro são registradas para ajudar você a identificar os caminhos da tabela e a limpar seus dados. Exemplo: faça login em sua conta se o crawler falhar porque a contagem da tabela foi maior do que o valor limite da tabela fornecido:

Table Threshold value = 28, Tables detected - 29

Em CloudWatch, registramos todas as localizações de tabelas detectadas como uma INFO mensagem. Um erro é registrado como o motivo da falha.

ERROR com.amazonaws.services.glue.customerLogs.CustomerLogService - CustomerLogService received CustomerFacingException with message The number of tables detected by crawler: 29 is greater than the table threshold value provided: 28. Failing crawler without writing to Data Catalog. com.amazonaws.services.glue.exceptions.CustomerFacingInternalException: The number of tables detected by crawler: 29 is greater than the table threshold value provided: 28. Failing crawler without writing to Data Catalog.