Skip to main content
Este guia faz parte de uma coletânea de aprendizados obtidos em encontros da comunidade. Para ver mais soluções e insights do mundo real, você pode explorar por problema específico. Partes demais sobrecarregando seu banco de dados? Confira o guia de insights da comunidade sobre Too Many Parts. Saiba mais sobre visões materializadas.

O antipadrão de armazenamento 10x

Problema real de produção: “Tínhamos uma visão materializada. A tabela bruta de logs tinha cerca de 20 GB, mas a visão materializada dessa tabela de logs explodiu para 190 GB — quase 10x o tamanho da tabela bruta. Isso aconteceu porque estávamos criando uma linha por atributo, e cada log pode ter 10 atributos.” Regra: Se o seu GROUP BY cria mais linhas do que elimina, você está criando um índice caro, não uma visão materializada.

Validação da saúde de visões materializadas em produção

Esta consulta ajuda você a prever se uma visão materializada vai comprimir seus dados ou fazê-los explodir antes de criá-la. Execute-a na sua tabela e nas colunas reais para evitar o cenário da “explosão de 190GB”. O que ela mostra:
  • Baixa taxa de agregação (<10%) = Boa MV, compressão significativa
  • Alta taxa de agregação (>70%) = MV ruim, risco de explosão no armazenamento
  • Multiplicador de armazenamento = Quanto maior ou menor sua MV ficará

Quando visões materializadas se tornam um problema

Sinais de alerta para acompanhar:
  • A latência de inserção aumenta (consultas que levavam 10 ms agora levam 100 ms+)
  • Erros de “Too many parts” aparecendo com mais frequência
  • Picos de CPU durante operações de inserção
  • Timeouts de inserção que antes não aconteciam
Você pode comparar o desempenho das inserções antes e depois de adicionar MVs usando system.query_log para acompanhar tendências na duração das consultas.

Fontes em vídeo

Última modificação em 3 de julho de 2026