Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Postgres: database, index, write, overhead

Какие накладные расходы добавляет индекс в БД?

Вопрос проверяет понимание компромиссов между скоростью чтения и стоимостью записи в реляционных БД.

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

Индексы ускоряют чтение, но замедляют операции записи.
Каждая вставка, обновление или удаление требует обновления индекса.
Индексы занимают дополнительное место на диске и в памяти.
Они увеличивают время транзакций на запись.
Избыточные индексы могут ухудшить общую производительность.

Длинный ответ

Индекс — это отдельная структура данных, которая требует обслуживания.

Определение

Индекс БД — это вспомогательная структура, ускоряющая поиск данных за счёт дополнительного хранения и вычислений.

Накладные расходы при записи

При операциях INSERT, UPDATE, DELETE:

  • обновляется каждая индексная структура

  • выполняются дополнительные записи на диск

  • увеличивается время транзакции

Чем больше индексов у таблицы — тем дороже запись.

Потребление памяти и диска

Индексы:

  • занимают место на диске

  • могут кэшироваться в памяти

  • увеличивают pressure на buffer cache

Влияние на планировщик запросов

  • лишние индексы усложняют выбор плана

  • возможны неоптимальные решения planner’а

Когда индекс — зло

  • маленькие таблицы

  • редко используемые поля

  • высоконагруженные write-heavy системы

Вывод

Индексы ускоряют чтение ценой записи и памяти, поэтому их нужно добавлять осознанно и регулярно пересматривать.

Уровень

  • Рейтинг:

    5

  • Сложность:

    6

Навыки

  • Postgres

    Postgres

Ключевые слова

#database

#index

#write

#overhead

Подпишись на Java Developer в телеграм