Как индекс влияет на скорость БД

«Как индекс влияет на скорость БД» — вопрос из категории Базы данных, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Индекс ускоряет поиск и сортировку данных, так как позволяет БД быстро находить строки без полного сканирования таблицы (full scan). Он работает как оглавление в книге — указывает на нужные страницы.

Пример:

-- Создание индекса
CREATE INDEX idx_user_email ON users(email);

-- Запрос с использованием индекса
SELECT * FROM users WHERE email = 'test@example.com';

Нюансы:

  • Ускоряет SELECT, но замедляет INSERT, UPDATE, DELETE (индекс нужно обновлять).
  • Занимает дополнительное место.
  • Эффективен для часто фильтруемых полей (WHERE, JOIN, ORDER BY).
  • Избыточные индексы ухудшают производительность.