Comments 2
Мажорное обновление
. Общее время обновления всех компонентов продукта в конфигурации cluster объёмом 100 ГБ — 65 минут.
А какое время у вас было при использовании pg_upgrade (с флагом --link или с флагом --clone если btrfs/xfs и без них) + время analyze и все это в разрезе обновление мастера и отдельно реплики?
Просто 65 минут на 100ГБ выглядит просто гигански большим временем. На моей практике на шустрых nvme дисках база размером 2TB обновлялась pg_upgrade --link за пару минут, сбор статистики дольше, но ни о каких 60 минутах точно небыло и речи.
pg_upgrade с флагом --link может быть выполнен за несколько минут. Однако мажорное обновление кластера у нас включает множество дополнительных операций, которые увеличивают время. 65 минут — это работа не только pg_upgrade, но и снятие резервной копии, работа rsync, пересчет индексов, сбор новой статистики и операции по обновлению сторонних компонентов, их у нас не менее пяти. Также у нас большой набор проверок, которые перед тем, как запустить миграцию, проверяют готовность стенда. Все это и складывается в такое время.
В статье упоминается, что мы ведем работу по переходу на компонентную архитектуру, что в свою очередь должно повлечь оптимизацию кода и, следовательно, уменьшение времени любого обновления.
Укрощаем мажорные обновления: сценарий обновления системных данных каталога без лишней боли