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.
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
Términos relacionados
- Consulta de base de datosUna consulta pide datos con condiciones definidas. La selección, el alcance y el orden deben ajustarse a su propósito.
- Tiempo de respuestaEl tiempo de respuesta necesita un inicio y un fin definidos. Recibir una respuesta de la API y disponer de una vista utilizable son etapas distintas.
- Sistema heredadoUn sistema existente que sigue en uso, con dependencias técnicas y de negocio acumuladas.
- Arquitectura multiinquilinoUna solución multiinquilino admite ámbitos separados por cliente o grupo. Un inquilino no equivale automáticamente a una persona o una base de datos.
- Caché del navegadorLa caché del navegador guarda respuestas HTTP adecuadas. Su reutilización y validación siguen las reglas correspondientes.
- Invalidación de cachéLa invalidación hace que una copia guardada deje de reutilizarse según reglas definidas. El registro de origen es una cuestión distinta.
Artículos sobre el tema








Desarrollo de software con ASES
Software a medida, aplicaciones web y móviles



