Ответ
Индексация ускоряет поиск данных в БД, уменьшая количество операций ввода-вывода. Индекс — это структура (например, B-дерево), хранящая значения определённых столбцов с указателями на соответствующие строки.
Пример:
-- Создание индекса
CREATE INDEX idx_user_email ON users(email);
-- Запрос с использованием индекса
SELECT * FROM users WHERE email = 'test@example.com';
Когда использовать:
- Частые поиски по условию (
WHERE,JOIN). - Уникальные или часто фильтруемые поля.
Осторожно:
- Индексы замедляют вставку/обновление (требуется перестройка индекса).
- Избыточные индексы увеличивают объём хранилища.
Оптимальный выбор индексов — баланс между скоростью чтения и затратами на запись.