Ir para o conteúdo

Por que o AWS Glue não adiciona partições a uma tabela durante um rastreamento incremental?

2 minuto de leitura
0

Quero solucionar problemas de partições que estão faltando depois de executar um rastreamento incremental do AWS Glue.

Breve descrição

Quando um crawler do AWS Glue executa um rastreamento incremental, ele identifica somente as partições que o crawler adicionou após o rastreamento anterior. Para adicionar a partição, mais de 70% dos arquivos em uma partição devem ter o mesmo esquema da tabela do crawler.

Importante: um crawler do AWS Glue não pode adicionar uma partição que tenha sido previamente sinalizada como uma incompatibilidade de esquema. É uma prática recomendada garantir que todas as propriedades da sua nova partição correspondam às propriedades da tabela original antes da execução do crawler.

Resolução

Abra o log do Amazon CloudWatch que corresponde ao último rastreamento do seu crawler e, em seguida, pesquise o prefixo Amazon Simple Storage Service (Amazon S3) da nova partição. Se o esquema da nova partição e o esquema da tabela original não corresponderem, a mensagem “Partition does not match table schema or has mismatch keys” (A partição não corresponde ao esquema da tabela ou tem chaves incompatíveis) será exibida.

Se você receber a mensagem de erro anterior, verifique se as seguintes propriedades na nova partição e na tabela original correspondem:

  • Formato de compressão
  • Tipo de arquivo
  • Esquema de arquivo

Certifique-se de que a estrutura S3 da nova partição corresponda à estrutura S3 da tabela original. Por exemplo, se a estrutura S3 da tabela original usar o formato de data aaaa-mm-dd, a estrutura S3 da nova partição também deverá usar o formato de data aaaa-mm-dd. Se as propriedades não corresponderem, modifique os arquivos na nova partição para que correspondam à tabela original.

Em seguida, use o Athena para adicionar a nova partição à tabela. Para partições no estilo hive, execute o comando MSCK REPAIR TABLE. Para partições que não estejam no estilo hive, execute o comando ALTER TABLE ADD PARTITION.

AWS OFICIALAtualizada há um ano