Что влияет на время выполнения запроса

«Что влияет на время выполнения запроса» — вопрос из категории SQL, который задают на 33% собеседований Аналитик Данных. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

На время выполнения запроса влияют:

  1. Объем данных – чем больше строк обрабатывается, тем дольше выполняется запрос.
  2. Сложность запроса – JOIN, подзапросы, агрегации (GROUP BY) увеличивают время.
  3. Индексы – отсутствие индексов на полях в WHERE/JOIN приводит к полному сканированию таблицы (FULL SCAN).
  4. Конфигурация БД – выделенные ресурсы (CPU, RAM), настройки кэширования.
  5. Конкуренция – другие запросы, выполняемые параллельно, могут замедлять работу.

Пример:

-- Медленный запрос (нет индекса на `user_id`)
SELECT * FROM orders WHERE user_id = 1000;

-- Оптимизированный (с индексом)
CREATE INDEX idx_user_id ON orders(user_id);
SELECT * FROM orders WHERE user_id = 1000;