Как индексы B-Tree ускоряют SQL-запросы и когда они вредят?

B-Tree позволяет находить нужные ключи и диапазоны без полного просмотра таблицы и может помогать сортировке. Цена — дополнительное место и работа при вставках, обновлениях и удалениях.

Короткий ответ

Что ответить на собеседовании

B-Tree позволяет находить нужные ключи и диапазоны без полного просмотра таблицы и может помогать сортировке. Цена — дополнительное место и работа при вставках, обновлениях и удалениях.

Подробный разбор

Ответ с пояснениями

B-Tree позволяет находить нужные ключи и диапазоны без полного просмотра таблицы и может помогать сортировке. Цена — дополнительное место и работа при вставках, обновлениях и удалениях.

Эффект зависит от селективности, порядка полей составного индекса и того, сколько строк всё равно придётся прочитать. Для запроса почти всей таблицы последовательное чтение иногда выгоднее. Лишние индексы повышают стоимость записи и обслуживания, а неудачный порядок колонок не соответствует фильтрам. Проверяйте фактический план и объём чтения на характерных данных, а не добавляйте индекс на каждое поле по умолчанию.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее