pg_repack. Реорганизация таблиц с минимальными блокировками#
Версия: 1.4.7.
В исходном дистрибутиве установлено по умолчанию: нет.
Связанные компоненты: отсутствуют.
Схема размещения:
ext.
Модуль предназначен для выполнения реорганизации таблиц с минимальными блокировками, а также для опционального восстановления физического порядка кластерных индексов. Это позволяет минимизировать эффект так называемого «раздувания» таблиц (англ. «bloat»).
Описание расширения приведено в документе «Руководство администратора», раздел «Сценарии администрирования», подраздел «Расширение pg_repack»;
Доработка#
Доработка: Добавление расширения
pg_repackв состав дистрибутива PostgreSQL Sber Edition для обеспечения возможности реорганизации таблиц без блокировки.Версия: 4.3.0.
Ограничения#
Отсутствие ограничений на работу с диском и возможности распределить нагрузку приводит к значительной нагрузке на диск и падению производительности при работе с большими таблицами (падение сравнимо с вызовом полного копирования таблицы);
Во время работы забивается журнал предзаписи (WAL, Write-Ahead Logging), что приводит к задержке между лидером кластера и репликой. Результатом этого может стать падение сущности PostgreSQL. При обработке больших таблиц рекомендуется отключить слот репликации на время работы утилиты;
Для реорганизации требуется дополнительное место на диске, равное сумме размера оригинальной таблицы, размера индексов и размера таблицы с логами. При небольшой нагрузке размером логов можно пренебречь.
Установка#
Описание установки расширения в документе «Руководство по установке», раздел «Установка», подраздел «Расширение pg_repack».
Настройка#
Настройка не требуется.
Использование модуля#
С перечнем опций в рамках использования модуля можно ознакомиться на сайте pg_repack в разделе «Usage».
Ссылки на документацию разработчика#
Дополнительно поставляемый модуль pg_repack: https://reorg.github.io/pg_repack/.