
Мажорное обновление Greengage с помощью pg_upgrade и ggupgrade
olga_sergeyeva 5 минут назад Мажорное обновление Greengage с помощью pg_upgrade и ggupgrade Средний 16 мин 152 Блог компании Greengage DB Open source * PostgreSQL * Высоконагруженные системы * Распределённые системы *...
Anthropic — What company has the best second artificial intelligence model at the end of June?
Значимый прорыв формирует отрасль ИИ: olga_sergeyeva 5 минут назад Мажорное обновление Greengage с помощью pg_upgrade и ggupgrade Средний 16 мин 152 Блог компании Greengage DB Open source * PostgreSQL * Высоконагруженные системы * Распределённые системы * Туториал В данной статье описывается процесс мажорного обновления СУБД Greengage (open-source форк Greenplum) с помощью утилит pg_upgrade и ggupgrade. Утилиты находятся на этапе финальных доработок, тестирования и отладки на момент выхода статьи. Все дальнейшее описание и примеры актуальны для перехода Greengage с версии 6 на 7.
ВведениеСовременные приложения, которым требуется хранение и доступ к данным, немыслимы без надежной и производительной системы управления базами данных (СУБД). Обновление СУБД, как и любого другого ПО, является очень важным процессом. Есть множество причин, по которым нужно обновлять СУБД, и направлены они на улучшение стабильности, безопасности и эффективности вашей инфраструктуры.
Технические детали
Вот основные причины обновления СУБД:Повышение безопасности. Рост производительности. Новые функциональные возможности.
Актуальность и поддержка сообщества. Оставаясь на актуальных версиях, можно получать полноценную поддержку от сообщества и разработчиков. Более подробно с изменениями в новых версиях Greengage можно ознакомиться на странице Релизы.
Обновление СУБД можно разделить на два типа: минорное и мажорное. Минорное обновление версии СУБД PostgreSQL и Greengage (например, с версии 6. 30) предполагает, что формат хранения данных не будет меняться, и поэтому достаточно обновить бинарные файлы СУБД.
Отраслевые последствия
Мажорное обновление версии (например, с версии 6. 4) может менять структуру системных объектов, поэтому здесь недостаточно обновить бинарные файлы — необходимо выполнить миграцию (перенос) данных в кластер следующей мажорной версии. Миграцию данных выполняют с помощью логического бэкапа, что занимает достаточно много времени.
В процессе создания логического бэкапа кластер должен быть неактивен для записи, а во время восстановления — полностью остановлен, если мы восстанавливаем на той же инфраструктуре. В производственных средах вопрос минимизации простоя БД стоит особенно остро. Для баз данных размером сотни терабайт и более, как для Greengage, это может означать часы или даже дни простоя, что неприемлемо для критически важных бизнес-процессов.
Обновление PostgreSQL с помощью утилиты pg_upgradeКластер Greengage — это распределенный кластер, состоящий из десятков или сотен инстансов, основанных на PostgreSQL. Более подробно ознакомиться с архитектурой Greengage можно в документации. Поэтому сначала рассмотрим утилиту pg_upgrade для обновления PostgreSQL, так как именно она взята за основу обновления кластера Greengage.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.





