Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • AI Studio
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for Greenplum®
  • Начало работы
    • Взаимосвязь ресурсов сервиса
    • Классы хостов
    • Расчет конфигурации кластера
    • Сеть в Managed Service for Greenplum®
    • Квоты и лимиты
    • Резервные копии
    • Ресурсные группы
    • Шардирование
    • Пользователи и роли
    • Аутентификация пользователей
    • Командный центр
    • Внешние таблицы
    • Управление соединениями
    • Расширение кластера
    • Техническое обслуживание
    • Настройки Greenplum®
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Обучающие курсы

В этой статье:

  • Этап подготовки
  • Этап перераспределения данных
  • Длительность этапов и контроль за длительностью
  • Настройки, влияющие на процесс перераспределения данных
  1. Концепции
  2. Расширение кластера

Расширение кластера Greenplum®

Статья создана
Yandex Cloud
Обновлена 7 мая 2025 г.
  • Этап подготовки
  • Этап перераспределения данных
  • Длительность этапов и контроль за длительностью
  • Настройки, влияющие на процесс перераспределения данных

Кластер можно расширить, чтобы добавить в него дополнительные хосты-сегменты.

Процедура расширения состоит из этапа подготовки и этапа перераспределения данных. Этап перераспределения данных можно выполнить как сразу после этапа подготовки, так и позднее в фоновом режиме.

Выполнение каждого из этапов может занять длительное время. Нельзя повлиять на длительность этапа подготовки, но можно повлиять на длительность этапа перераспределения данных, таким образом контролируя общую длительность процедуры расширения кластера.

Этап подготовкиЭтап подготовки

На этом этапе происходят следующие процессы:

  1. В кластер добавляются новые хосты-сегменты.

  2. Утилита gpexpand производит подготовку к перераспределению таблиц:

    1. Создает служебную схему данных gpexpand в базе данных postgres.

    2. Формирует очередь таблиц для перераспределения.

      Будут перераспределены все таблицы из всех баз данных кластера, но им будет назначен разный приоритет, который влияет на положение таблицы в очереди.

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

    3. Подготавливает партиционированные таблицы к перераспределению данных.

Ориентировочная длительность этапа — несколько часов, повлиять на нее нельзя. Подробнее о длительности этапов см. ниже.

Важно

Фактически новые хосты-сегменты будут добавлены в кластер уже на этом этапе, но расширение кластера считается выполненным только после завершения этапа перераспределения данных.

Этап перераспределения данныхЭтап перераспределения данных

На этом этапе происходят следующие процессы:

  1. Данные таблиц в кластере перераспределяются с помощью утилиты gpexpand таким образом, чтобы эти данные были равномерно распределены по всем хостам-сегментам.

  2. Служебная схема данных gpexpand удаляется.

Ориентировочная длительность этапа — несколько дней, на нее можно повлиять с помощью настроек. Подробнее о длительности этапов см. ниже.

Длительность этапов и контроль за длительностьюДлительность этапов и контроль за длительностью

Ориентировочная длительность каждого этапа составляет:

  • Несколько часов для этапа подготовки.
  • Несколько дней для этапа перераспределения данных.

Реальная длительность каждого этапа зависит не только от объема баз данных в кластере и общего количества таблиц, но также от уровня и характера нагрузки на кластер.

Это связано с тем, что на каждом этапе расширения кластера работает утилита gpexpand, которая в ходе своей работы захватывает эксклюзивные блокировки на уровне отдельных таблиц. Пользовательские запросы в процессе выполнения тоже могут захватывать блокировки. Поэтому может существенно замедляться как работа gpexpand, так и обработка пользовательских запросов: это зависит от того, какой процесс первым захватил блокировку, а какой — ожидает особождения этой блокировки. Оба этих процесса могут создавать повышенную нагрузку на кластер.

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

Поскольку этап перераспределения данных может длиться достаточно долго, для кластеров Managed Service for Greenplum® предоставляются инструменты для мониторинга процесса перераспределения данных. Используйте эти инструменты, когда запущено расширение кластера, чтобы получить более точную информацию о ходе процесса и оценить время до его завершения.

Настройки, влияющие на процесс перераспределения данныхНастройки, влияющие на процесс перераспределения данных

Доступны следующие настройки:

  • Закрыть кластер от нагрузки Консоль управления CLI API

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

    Важно

    Если вы закроете кластер от нагрузки и при этом выключите фоновое перераспределение данных, то потеряете доступ к кластеру до завершения расширения кластера.

    Процесс расширения может выполняться длительное время.

  • Фоновое перераспределение данных Консоль управления CLI API

    Эта настройка влияет на стратегию перераспределения данных:

    • Если настройка выключена (false), то данные будут перераспределены сразу же после завершения этапа подготовки к расширению кластера.

      Кластер будет находиться в статусе Updating до тех пор, пока не завершатся все этапы расширения кластера.

      Процесс перераспределения данных будет запущен однократно и продлится либо до завершения перераспределения всех таблиц в кластере, либо до истечения соответствующего таймаута.

      Если процесс перераспределения данных завершится по таймауту и часть таблиц останется не обработанной, то такие таблицы потребуется перераспределить вручную.

    • Если настройка включена (true), то перераспределение данных будет отложено.

      Кластер будет находиться в статусе Updating только на этапе подготовки к расширению кластера.

      Процесс перераспределения данных будет запускаться по расписанию во время выполнения регламентных операций до тех пор, пока не будут обработаны все таблицы.

      При включенном фоновом перераспределении данных регламентные операции выполняются по следующему алгоритму:

      1. Выполняется очистка пользовательских таблиц (VACUUM).

      2. Выполняется перераспределение данных (REDISTRIBUTE):

        1. Если до истечения таймаута были обработаны все таблицы, то процесс перераспределения данных будет удален из расписания регламентных работ и больше не будет запускаться.
        2. Если до истечения таймаута была обработана только часть таблиц, то процесс запустится повторно при следующем проведении регламентных операций и обработка таблиц будет продолжена.
      3. Выполняется сбор статистики (ANALYZE).

  • Таймаут редистрибуции Консоль управления CLI API

    Таймаут (в секундах), после истечения которого процесс перераспределения данных будет прерван.

    Истечение таймаута не приводит к немедленному прерыванию процесса: будет завершено перераспределение данных для тех таблиц, которые находятся в обработке (статус IN PROGRESS). Можно запросить статус таблиц, если кластер не закрыт от нагрузки.

    Минимальное значение — 0. Таймаут будет рассчитан автоматически в зависимости от конфигурации кластера и объема данных.

    Максимальное значение зависит от того, включено ли фоновое перераспределение данных:

    • 28800 (8 часов) — если включено.
    • Не ограничено — если выключено.
  • Количество потоков редистрибуции Консоль управления CLI API

    Количество потоков, которые будут запущены в ходе процесса перераспределения данных.

    Большее количество потоков ускорит перераспределение данных, но увеличит нагрузку на кластер.

    Минимальное значение (по умолчанию) — 0 (количество будет рассчитано автоматически в зависимости от конфигурации кластера и объема данных), максимальное — 25.

Greenplum® и Greenplum Database® являются зарегистрированными товарными знаками или товарными знаками Broadcom Inc в США и/или других странах.

Была ли статья полезна?

Предыдущая
Управление соединениями
Следующая
Техническое обслуживание
Проект Яндекса
© 2025 ООО «Яндекс.Облако»