Saltar al contenido

Consulta N+1

En el patrón N+1, una consulta de lista va seguida de otra consulta por cada resultado. Importa esa estructura, no solo un número alto de llamadas.

También conocido comoProblema N+1N+1 Query
Desarrollo de software

Una consulta N+1 aparece cuando una aplicación carga primero una lista y después ejecuta otra consulta por cada entrada. El número de accesos crece así con el número de entradas.

Un pequeño cálculo

En un portal hipotético, una lista de 10 pedidos va seguida de consultas separadas para sus direcciones de entrega. En total son 11 llamadas a la base. Según la necesidad, los datos relacionados podrían cargarse juntos con límites adecuados.

Muchas consultas no demuestran por sí solas ese patrón. Debe verse la relación con el recorrido de los resultados. Tampoco una consulta conjunta arbitrariamente grande es automáticamente mejor. El volumen necesario, los permisos y el coste real de ejecución siguen formando parte del análisis.

Fuentes

Artículos sobre el tema

Desarrollo de software con ASES

Software a medida, aplicaciones web y móviles