Pular para o conteúdo
InícioPT · EN · ES · JA · ZH

Quando algo falha

O pipeline terminou com sucesso e o datalake está vazio

Seção intitulada “O pipeline terminou com sucesso e o datalake está vazio”

O sintoma mais comum, e quase sempre configuração — não erro.

O pipeline não falha por falta de configuração. Sem banco marcado, o snapshot é exportado, os Parquet chegam ao S3, e o job de cópia os ignora em silêncio.

Em ordem de probabilidade:

Causa Como confirmar
Nenhum banco marcado A visão geral do console mostra o alerta
Um banco novo apareceu no cluster Idem, com o nome do banco
Eventos de snapshot desligados Idem — nesse caso nem a exportação roda
Filtro de tabelas excluiu tudo Em Bancos, veja quantas tabelas estão marcadas

O log do job de cópia também registra o que foi ignorado:

IGNORADO: 56 arquivos do banco "pagila" -- ele nao esta marcado
para ingestao, entao nada dele chega ao datalake.

Se a tabela existia e parou de aparecer, verifique em Partições se há uma configuração para ela com substituir a cópia direta ligado e a partição desabilitada. Nessa combinação, a cópia pula a tabela e o particionador não roda — ninguém a grava.

Ligar a partição de volta, ou desligar “substituir a cópia direta”, resolve.

Em Execuções, abra a execução para ver as etapas em ordem. A etapa que falhou traz a mensagem de erro e o log.

As causas mais comuns:

  • Memória no particionamento — uma tabela com muitos valores distintos na coluna de partição. Veja quantos níveis usar.
  • Permissão no cross-account — se o passo 3 da instalação cross-account não foi feito, a exportação falha ao escrever no bucket.
  • Timeout — cada job tem uma hora. Uma tabela muito grande com ordenação configurada é a suspeita mais provável.

Uma tabela que falha não derruba as outras: o pipeline tolera falhas isoladas no particionamento e o crawler cataloga o que foi gravado.

Se aparecer uma coluna partition_0 com valores 1, 2, 3, a instalação está em uma versão anterior à que achata o diretório de partes do RDS. Atualize o pacote e reprocesse.

Duas causas possíveis:

Tabela particionada no Postgres. O RDS exporta a tabela-mãe e cada partição filha. Versões atuais detectam e ignoram as filhas; se você vê tabelas como payment_p2024_01 ao lado de payment, atualize o pacote.

Partição sem “substituir a cópia direta”. Por padrão, uma tabela particionada aparece duas vezes de propósito — a cópia inteira e a particionada. Ligue a opção se quiser só a particionada.

O Cognito recusa URLs de callback em http, exceto localhost. Se o console atende em http, o login falha antes de começar. Rode setup-https.sh.

Se o navegador avisa que o certificado não é confiável, é o certificado autoassinado — funciona, mas para eliminar o aviso use um certificado próprio via CERTIFICATE_ARN.

O load balancer é interno, de propósito: o console não é exposto à internet. Você alcança de dentro da VPC, por VPN, ou por um túnel do Session Manager.

Cada job registra a própria versão ao iniciar, e a execução guarda isso. Em Execuções, a versão de cada componente aparece nos detalhes — útil quando o comportamento mudou entre atualizações.