Postgres pg dump влияние на производство DB


Можно ли запросить, сколько мультиверсионных строк имеется в БД ?

Мы хотим измерить влияние pg_dump на производственную базу данных и приостановить ее в случае необходимости: не создает ли она слишком много мультиверсионных строк?

Заранее спасибо

1 2

1 ответ:

pg_dump не создает никаких версий строк (a.k.A tuples).

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

Обычно это не является большой проблемой, если у вас нет очень высокой активности записи в базе данных. Чтобы устранить эту проблему, можно создать резервный сервер потоковой репликации, установив max_standby_streaming_delay больше, чем длительность из pg_dump и пусть pg_dump бежит туда.