pgcompacttable

Реорганизации данных в таблицах и перестройка индексов.
Связанные компоненты: модуль написан на языке Perl, поэтому для работы требует библиотеки Perl DBI с модулем поддержки PostgreSQL:
Утилита pgcompacttable - это инструмент для уменьшения размера «раздутых» таблиц и индексов без тяжелых блокировок.
Модуль предназначен для реорганизации данных в таблицах и перестроения индексов для того, чтобы освободить место на диске без ущерба для производительности базы данных.
Модуль может быть запущен от имени любого пользователя ОС, в том числе на другом хосте (вариант с ключом --host).

Фрагментация: pg_repack и pgcompacttable

В процессе работы с Pangolin SE возникает table bloat — ситуация, при которой данные таблиц будут храниться неэффективно. Они фрагментируются, что приводит к ухудшению производительности и нерациональному использованию места на диске.
Основные причины фрагментации:
  • непредвиденный скачок запросов UPDATE или DELETE;
  • долгие транзакции, препятствующие удалению старых версий записей (VACUUM не может удалить запись, если есть хотя бы одна незакрытая транзакция старше запроса, удалившего или изменившего эту запись);
  • долгие транзакции, препятствующие удалению старых версий записей (VACUUM не может удалить запись, если есть хотя бы одна незакрытая транзакция старше запроса, удалившего или изменившего эту запись);
  • незавершенные PREPARED транзакции;
  • накопление остатков удаленных записей большого размера при работе с типами данных переменной длины.

Ссылки на документацию разработчика

Дополнительную информацию по поставляемому модулю pgcompacttable можно получить по ссылке.
Предыдущий раздел
pg_buffercache
Следующий раздел
pgcopydb
Была ли страница полезной?