Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Задачи

Войти

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

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

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Postgres: vacuum full, cleanup, table rewrite, lock

Что такое FULL VACUUM и зачем он применяется?

Этот вопрос проверяет знание процедуры очистки и сжатия базы данных в PostgreSQL.

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

VACUUM FULL полностью перераспределяет таблицу и освобождает неиспользуемое пространство на диске, блокируя таблицу на запись. Его применяют для значительного уменьшения размера таблиц после массового удаления или обновления большого объёма строк.

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

Обычный VACUUM:

  • Помечает мёртвые строки для переиспользования, не блокирует DML.

VACUUM FULL:

  • Создаёт новую версию файла таблицы, копирует только актуальные строки.

  • Освобождает место операционной системе.

  • Блокирует таблицу на время операции.

Когда использовать:

  • После массового удаления (archiving) больших объёмов данных.

  • При сильном фрагментировании таблицы.

Альтернативы:

  • CLUSTER — перестраивает индекс и физический порядок строк.

  • Регулярный VACUUM + ANALYZE для поддержания производительности.

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    7

Навыки

  • Postgres

    Postgres

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

#vacuum full

#cleanup

#table rewrite

#lock

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

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.