Встречается на собеседованиях • сегодня

Что может произойти при добавлении индекса в таблицу, состоящую из миллиона записей

Добавление индекса к большой таблице может вызвать:

  1. Блокировку таблицы – операция может выполняться с эксклюзивной блокировкой, блокируя запросы на изменение (INSERT/UPDATE/DELETE) на время создания.

  2. Временное увеличение нагрузки – процесс требует чтения всех данных и построения B-дерева, что нагружает CPU и дисковую подсистему.

  1. Увеличение размера БД – индексы занимают место (обычно 10-30% от размера таблицы).

Пример для MySQL:

sql
-- Может выполняться несколько минут/часов на больших таблицах
ALTER TABLE large_table ADD INDEX idx_column(column_name);

Рекомендации:

  • Выполнять в период низкой нагрузки
  • Использовать ONLINE-индексы (если СУБД поддерживает)
  • Для PostgreSQL: CREATE INDEX CONCURRENTLY
  • Для MySQL 8.0+: ALGORITHM=INPLACE, LOCK=NONE
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы