Термин · Backend разработчик
N+1 query
Ситуация, когда приложение делает один запрос и затем много дополнительных запросов в цикле.
Что означает
Часто лечится eager loading, join или изменением модели данных.
Пример применения
Для 100 заказов отдельно загружаются 100 пользователей.
Синонимы и варианты
Частые вопросы
Что такое N+1 query?
Ситуация, когда приложение делает один запрос и затем много дополнительных запросов в цикле.
Где применяется N+1 query?
Часто лечится eager loading, join или изменением модели данных.
Как выглядит пример N+1 query?
Для 100 заказов отдельно загружаются 100 пользователей.
Связанные термины
Где встречается
При проектировании хранения, конкурентных операций и повторных запросов. Проверяют не только успешный одиночный вызов, но и сбои, параллельность и повторы.
Ошибки понимания
Проблема возникает из-за множества дополнительных запросов при обработке набора. Один большой JOIN не всегда является лучшим исправлением: проверяют объем данных, число строк и план.
Редакция Ariol · Версия 2 · Обновлено
Независимая экспертная проверка не заявлена.
Что обновлено
- — Обновлено: Где встречается, Ошибки понимания.
Материал предназначен для обучения. Адаптируйте рекомендации к внутренним регламентам компании и условиям проекта.
Предложить исправление через контакты Ariol