Назад к вопросам
Junior
71
questionbank
Что такое индекс в реляционной базе данных?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Индекс в реляционной базе данных — это структура данных, улучшающая скорость операций извлечения данных (SELECT), но замедляющая операции изменения данных (INSERT, UPDATE, DELETE).
По принципу работы схож с предметным указателем в книге: он позволяет СУБД быстро находить нужные строки, не перебирая всю таблицу.
Основные типы индексов:
- Первичный (Primary Key): Уникальный индекс, автоматически создаваемый для столбцов, обозначенных как первичный ключ.
- Уникальный (Unique): Гарантирует уникальность значений в индексированных столбцах.
- Обычный (Non-unique): Не гарантирует уникальность значений. Используется для повышения производительности поиска.
- Полнотекстовый (Full-text): Используется для поиска по текстовым данным.
Пример создания индекса в SQL:
CREATE INDEX idx_lastname ON Employees (LastName);
При создании индекса следует учитывать:
- Наличие индекса замедляет операции записи и изменения данных. Каждый раз при изменении данных в индексированном столбце требуется обновить и индекс.
- Индекс потребляет дисковое пространство.
- Не все столбцы выгодно индексировать. Индексы эффективны для столбцов, часто используемых в условиях
WHERE,JOINиORDER BY.
Выбор столбцов для индексирования зависит от специфики запросов и структуры данных.