Выбор ответа Junior Индексы спрашивают часто обновлено
Чем платим за индексы
Вопрос
Чем плохо создать индекс на каждую колонку таблицы?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Каждая запись обновляет все индексы: медленнее и больше места. Индекс это отдельная структура, её поддерживают при каждой записи, она занимает диск и место в кеше, увеличивает работу VACUUM.
Варианты ответа
- PostgreSQL разрешает не больше 5 индексов на таблицу
- Планировщик запутается и перестанет использовать индексы
- Каждая запись обновляет все индексы: медленнее и больше местаправильный ответ
- Ничем: лишние индексы не используются и ничего не стоят
Разбор
Индекс это отдельная структура, её поддерживают при каждой записи, она занимает диск и место в кеше, увеличивает работу VACUUM. Жёсткого лимита в 5 индексов нет. Планировщик выбирает по стоимости и не «путается», но лишние индексы не бесплатны даже неиспользуемые: их всё равно обновляют при записи.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.