|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
На двух серверах Ubuntu 18.04 установлен PostgreSQL 11.8 и настроена потоковая репликация. На обоих серверах в одно и то же время запускается pg_basebackup. При этом итоговый размер бэкапа на ведомом сервере почти в три раза меньше, чем на ведущем: 98 против 275 Гб. Предположительно, это произошло после того, как из одной таблицы было удалено около 200-250 Гб данных. VACUUM FULL этой таблицы не выполнялся. Физический размер базы, если смотреть с помощью du, одинаков на обоих серверах. Почему же столь существенно разнятся размеры бэкапов? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 10:09 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Безенчук, любопытно бы поинтересоваться, а зачем вам в принципе pg_basebackup отдельно primary и standby? В любом случае, возьмите результат pg_basebackup и сравните, что именно отличается и в каких директориях. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 10:25 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Melkij Безенчук, любопытно бы поинтересоваться, а зачем вам в принципе pg_basebackup отдельно primary и standby? В любом случае, возьмите результат pg_basebackup и сравните, что именно отличается и в каких директориях. Это как в том анекдоте про человека с десятком билетиков и "проездным", на случай если другие потеряет... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 10:27 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Безенчук, WAL-ы накопились? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 10:59 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
На всякий случай проверьте, что ни чего лишнего (не относящегося к постгрес) не лежит в ../main/ ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 12:34 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Melkij В любом случае, возьмите результат pg_basebackup и сравните, что именно отличается и в каких директориях. Сравнил. Различиями можно пренебречь. Если сравнивать листинги бэкапов пофайлово, то в листинге архива большего размера дополнительно присутствует 8 файлов из директории pg_commit_ts. Если же сравнивать размеры файлов в бэкапах, то различается менее 1% файлов, что не даёт возможности понять, куда делись 180 Гб. Павел Лузанов WAL-ы накопились? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 11:23 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Павел Лузанов WAL-ы накопились? Нет, не накопились. Даже наоборот - на слейве размер директории pg_wal на 100 Мб больше. А не может ли быть так, что при удалении около 200 Гб данных из таблицы и применении WAL на слейве, произошла какая-то реорганизация данных и некоторые файлы-сегменты не содержат в себе никакой информации и поэтому очень существенно сжались gzip? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 11:43 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Безенчук Melkij В любом случае, возьмите результат pg_basebackup и сравните, что именно отличается и в каких директориях. Сравнил. Различиями можно пренебречь Безенчук При этом итоговый размер бэкапа на ведомом сервере почти в три раза меньше, чем на ведущем: 98 против 275 Гб Эти два утверждения полностью противоречат друг другу. Исправьте одно из них. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 11:58 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Сначала я получил листинги архивов: tar tvzf /mnt/backup/master.tar.gz > master tar tvzf /mnt/backup/slave.tar.gz > slave Затем я их отсортировал по 6 полю (директория/имя файла) и выбрал только поля 3 (размер файла) и 6 (директория/имя файла): sort -k 6 master | awk '{print $3,$6}' > master.sort sort -k 6 slave | awk '{print $3,$6}' > slave.sort Потом сделал вот так: diff -y --suppress-common-lines master.sort slave.sort Итог (слева - мастер, справа - слейв): Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 12:28 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Безенчук, Вы их распакуйте и сравнивнине несжатый размер. Если он сильно отличается от того что файлы на диске занимают - это одно. Если не отличается а сжатые размеры отличаются сильно - надо смотреть что там с сжатием такое странное. Ну и комманда которой снимали base backup была бы полезной. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 12:31 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Maxim Boguk, pg_basebackup -v -z -Z1 -X stream -F t -c fast -P -D /mnt/backup На счёт распаковки и сравнения - понял, сделаю позже. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 12:39 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Распаковал, сравнил. Размер директории с базой отличается на 2 Мб. Наиболее существенно различаются pg_wal: у слейва она больше на 8 Гб. Уровень сжатия одинаков в обеих командах создания бэкапов - Z1. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 21:54 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Безенчук Распаковал, сравнил. Размер директории с базой отличается на 2 Мб. Наиболее существенно различаются pg_wal: у слейва она больше на 8 Гб. Уровень сжатия одинаков в обеих командах создания бэкапов - Z1. Очень странно... а у вас реплика от мастера не отвалилась случайно? Если нет дальше уже придется файлы сравнивать на сжимаемость и на совпадение. PS: а попробуйте распакованные base backup заново запаковать в tar/bzip2 например и сравнить размеры (проверить сжимаемость base backup независимыми средствами). PPS: кстати а зачем вы -X stream делаете? обычно base backup делается с расчётом на рабочий wal архив. А для снятия snapshot данных для долговременного хранения используется pg_dump который легко может в 5 раз меньше места занимать а то и в 20 (и такое я видел) по сравнению с base backup физическим (да и доставать с него отдельные таблицы удобнее). -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2021, 00:08 |
|
pg_basebackup и размер бэкапа
|
|||
---|---|---|---|
#18+
Maxim Boguk PS: а попробуйте распакованные base backup заново запаковать в tar/bzip2 например и сравнить размеры (проверить сжимаемость base backup независимыми средствами). Попробовал запаковать в tar + сжать bzip2: Архив мастера занимает 164 Гб, архив слейва - 59. То есть, данные со слейва сжимаются сильнее. При сжатии bzip2 я не указал степень компрессии, поэтому использовалась степень сжатия по умолчанию. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2021, 11:43 |
|
|
start [/forum/topic.php?fid=53&msg=40082032&tid=1993945]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 258ms |
total: | 390ms |
0 / 0 |