Повторное сжатие файла дампа нестандартного формата PostgreSQL от -Z 6 до -Z 9 - PullRequest
0 голосов
/ 12 июня 2019

Может ли кто-нибудь объяснить мне, как повторно сжать файл pgdump в произвольном формате, не восстанавливая его?

Мой обходной путь - основная база данных с репликацией, всего 5 узлов, с размером приблизительно 300 ГБ, я использую один для подчиненных реплик для создания файла дампа с -Z 9, это заняло около 4 часов, с -Z 6 это заняло около 2 часов. Проблема в использовании -Z 9 заключается в том, что это заняло слишком много времени, а реплика стала слишком сильно отставать от главного узла, поэтому я использую сжатие -Z 6. Я не могу добавить еще один узел только для создания файлов дампа.

Восстановление базы данных в хранилище дампов и создание нового файла дампа. Лучшее сжатие невозможно, поскольку в хранилище дампов недостаточно ресурсов для восстановления базы данных.

Я уже пытался сжать файл pgdump с помощью bz2 или 7z, но я получил разницу всего в 1 ГБ от общего размера файла pgdump около 40 ГБ. Если я использую сжатие -Z 9, я получаю файл pgdump размером около 32 ГБ.

Есть ли возможность использовать pg_restore и pg_dump и повторно сжать файл pgdump со сжатием -Z 6 до -Z 9?

1 Ответ

1 голос
/ 12 июня 2019

Я не думаю, что есть простой способ переписать файл дампа PostgreSQL с более высоким сжатием, но как насчет создания дампа с -Z 0 и последующего сжатия с помощью gzip или чего-то подобного?

Это сделало бы pg_dump настолько быстрым, насколько это возможно, и вы все равно могли бы иметь сжатие.

...