Зачем нужны индексы в БД

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

Ответ

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

Пример создания индекса в SQL:

CREATE INDEX idx_customer_name ON customers(last_name);

Когда использовать:

  • Частые поисковые запросы по полю
  • JOIN, WHERE, ORDER BY по индексированному столбцу

Осторожно:

  • Индексы замедляют INSERT/UPDATE/DELETE (требуется обновление индекса)
  • Занимают дополнительное место на диске

Оптимально — индексировать часто запрашиваемые столбцы, избегая избыточности.

Видео-ответы