Weaknesses of type CWE-1049

3 results

Operações excessivas de consulta em tabelas grandes

Ocorre quando uma aplicação executa múltiplas consultas (queries) sobre tabelas grandes sem otimização adequada, causando consumo excessivo de recursos de banco de dados e degradação severa de performance. O problema é comum em loops que executam queries uma por uma, em vez de usar operações em lote ou índices apropriados.

Example

Uma função que itera sobre 10 mil usuários e executa uma query individual para cada um (N+1 queries) em vez de fazer uma única consulta com JOIN. O resultado é travamento da aplicação e possível negação de serviço, pois o BD fica saturado.

How to mitigate

Use operações em lote (bulk queries), implemente índices apropriados nas colunas de filtro, considere cache para dados frequentemente consultados e refatore loops para usar JOINs ou subconsultas. Monitore e perfil as queries com ferramentas como EXPLAIN PLAN para identificar gargalos antes da produção.