Типы дисков в Managed Service for Greenplum®
Managed Service for Greenplum® позволяет использовать сетевые и локальные диски для организации хранилища кластеров баз данных. Сетевые диски реализованы на базе сетевых блоков — виртуальных дисков в инфраструктуре Yandex Cloud. Локальные диски физически размещаются в серверах кластера.
При создании кластера вы можете выбрать для хранилища следующие типы дисков:
-
Сетевые HDD-диски (
network-hdd
) — самый экономичный вариант для кластеров, не требовательных к скорости записи и чтения. -
Сетевые SSD-диски (
network-ssd
) — компромиссный вариант: медленнее, чем локальные SSD-диски, но, в отличие от них, обеспечивают сохранность данных при выходе из строя оборудования Yandex Cloud. -
Нереплицируемые SSD-диски (
network-ssd-nonreplicated
) — сетевые SSD-диски с повышенной производительностью, реализованной за счет устранения избыточности.Объем такого хранилища можно увеличивать только с шагом 93 ГБ.
-
Локальные SSD-диски (
local-ssd
) — самые быстрые диски.Объем такого хранилища можно увеличивать:
-
для платформы Intel Cascade Lake — только с шагом 100 ГБ;
-
для платформы Intel Ice Lake — только с шагом 368 ГБ.
Примечание
Для кластеров, хосты которых располагаются в зоне доступности
ru-central1-d
, недоступно хранилище на локальных SSD-дисках при использовании платформы Intel Cascade Lake. -
В кластере Managed Service for Greenplum® тип дисков у хостов-мастеров и хостов-сегментов может отличаться.
Примечание
При использовании стандартных хостов на платформе Intel Ice Lake доступ к хранилищу на локальных SSD-дисках предоставляется по запросу. Обратитесь в техническую поддержку
Особенности хранилища на локальных SSD-дисках
Хранилище на локальных SSD-дисках не обеспечивает отказоустойчивости хранения данных, а также влияет на тарификацию кластера в целом: кластер с таким хранилищем тарифицируется, даже если он остановлен. Подробнее — в правилах тарификации.
Управление дисковым пространством
При заполнении хранилища любого хоста более чем на 95% кластер автоматически переходит в режим read-only. При этом для всех баз данных через запрос ALTER DATABASE
выставляется настройка DEFAULT_TRANSACTION_READ_ONLY = TRUE
.
В этом режиме запросы на вставку (INSERT
), удаление (DELETE
) или обновление (UPDATE
) данных завершаются ошибкой.
Отслеживание перехода в read-only
Чтобы отслеживать степень заполнения хранилища на хостах кластера, настройте алерты в Yandex Monitoring:
-
Перейдите на страницу каталога и выберите сервис Monitoring.
-
Выберите сервис Managed Service for Greenplum®.
-
Создайте алерт со следующими параметрами:
-
Метрика — задайте параметры метрики:
-
облако;
-
каталог;
-
сервис Managed Service for Greenplum®;
-
идентификатор кластера Managed Service for Greenplum®;
Идентификатор кластера можно получить со списком кластеров в каталоге.
-
метка
disk.free_bytes
.
-
-
Условие срабатывания — задайте условие
Меньше или равно
для процента заполнения свободного дискового пространства, при котором сработает алерт:- 95% от размера хранилища для
Alarm
; - 90% от размера хранилища для
Warning
.
- 95% от размера хранилища для
-
Дополнительные настройки:
- Функция агрегации —
Минимум
(минимальное значение метрики за период). - Окно вычисления — желаемый период, с которым будет обновляться значение метрики.
- Функция агрегации —
-
Добавьте созданный ранее канал уведомлений.
-
Вывод кластера из режима read-only
Если кластер перешел в режим read-only:
-
Увеличьте размер хранилища, чтобы выйти за пороговое значение. Тогда Yandex Cloud снимет режим read-only автоматически.
-
Вручную отключите режим read-only и освободите место в хранилище, удалив часть данных.
Внимание
Не допускайте, чтобы в процессе этих действий свободное дисковое пространство уменьшилось до нуля. Поскольку предохранительный механизм отключен, Greenplum® в этом случае аварийно завершит работу, а кластер станет неработоспособным.
Чтобы отключить режим read-only вручную, обратитесь в техническую поддержку
-
Подключитесь к БД любым удобным способом.
-
Откройте транзакцию и внутри нее выполните команду:
SET LOCAL transaction_read_only TO off;
-
В рамках этой же транзакции удалите ненужные данные с помощью операторов
DROP
илиTRUNCATE
. Не используйте операторDELETE
— при его использовании строки отмечаются как удаленные, но не удаляются из базы физически. -
Зафиксируйте транзакцию и перезапустите все подключения к базе.
Например, если ваша база содержит ненужную таблицу
ExcessDataTable1
, удалите ее с помощью транзакции:
BEGIN; SET LOCAL transaction_read_only TO off; DROP TABLE ExcessDataTable1; COMMIT;
Greenplum® и Greenplum Database® являются зарегистрированными товарными знаками или товарными знаками VMware, Inc в США и/или других странах.