Лимиты, квоты, тарификация
Стоимость использования сервиса управляемых БД зависит от класса и количества хостов в кластере, типа и размера хранилища данных, объёма резервных копий и исходящего трафика.
Чем больше ядер процессора и оперативной памяти задействовано в кластере — тем он дороже. Выбирайте класс хоста разумно. Для учебных задач хватит минимального кластера с одним хостом типа burstable. Если понадобится, класс хоста можно изменить.
Оценивается каждый час работы хоста. Если кластер остановлен, оплата идет только за выделенный объём хранилища данных. Это выгодно, если вы используете кластер не постоянно, а время от времени: для учебных практических работ или тестирования. Также не забывайте удалять ненужные кластеры.
Хранение резервных копий оплачивается только в том случае, если размер БД и всех резервных копий больше выбранного размера хранилища.
При использовании сервиса оплачивается только исходящий трафик из Yandex Cloud в интернет сверх 10 ГБ в месяц. Передача трафика между сервисами Yandex Cloud и входящий трафик не тарифицируются.
Репликация
В кластерах PostgreSQL используется синхронная репликация. В этой классической СУБД запись в БД происходит на хосте-мастере. Остальные хосты в кластере — реплики, для них доступны только операции чтения данных. Транзакция подтверждается лишь тогда, когда данные записаны на диск и на хосте-мастере, и на всех репликах. Это повышает надёжность системы, но может заметно (на 25−30%) снизить скорость ее работы по сравнению с асинхронным режимом.
Асинхронная и синхронная репликации — это виды физической репликации, при которой изменённые блоки данных побайтово копируются с диска одного хоста на диск другого.
В PostgreSQL также реализован метод логической репликации. Его основное отличие от физической заключается в том, что вместо последовательностей байтов копируются таблицы и строки.
При логической репликации используются публикации и подписки. Один экземпляр БД (подписчик) подписывается на изменения в другом экземпляре (публикующем узле) и получает от него данные. Изменения на стороне публикующего узла передаются подписчику в реальном времени, публикациям в рамках подписки гарантируется транзакционная целостность (т. е. результат транзакции записывается в БД только тогда, когда все операции транзакции успешно завершены).
Подписчик, в свою очередь, также может публиковать данные, что позволяет организовать каскадную репликацию. В этом случае хост-мастер синхронизируется только с одной репликой, которая затем используется для синхронизации с другими репликами группы. Такой подход позволяет заметно уменьшить транзакционную нагрузку на хост-мастер.
С помощью репликации можно перенести данные из вашей базы в управляемую БД PostgreSQL.
Механизм подписки, на котором построена логическая репликация, позволяет перенести данные на кластер с минимальным простоем.
Логическая репликация поддерживается начиная с версии PostgreSQL 10 и выше. Вы можете переносить данные и между одинаковыми версиями, и на более свежие версии. Для этого настройте репликацию с сервера-источника на сервер-приёмник с более свежей версией СУБД.
Миграция данных в облако репликацией
Пошаговая инструкция: https://practicum.yandex.ru/trainer/ycloud/lesson/7fcf670e-67d5-48ef-9456-527ba71e78f7/
Data Transfer. Инструмент для миграции баз данных
Сервис Yandex Data Transfer позволяет ускорить миграцию и минимизировать простой при переключении на новую БД. Чтобы перенести данные, вам не нужно устанавливать драйверы: вся настройка делается в консоли управления. При этом исходная и целевая БД должны быть одинаковы, а структуры схем, типы данных и коды — совместимы.
Сервис можно использовать не только для миграции данных, но и для других задач.
Тестирование Yandex Cloud
Если вы тестируете сервисы управляемых БД MySQL и PostgreSQL, то лучше делать это на реальных данных. С помощью Data Transfer легко перенести данные в эти сервисы.
Аварийное восстановление
Data Transfer позволяет организовать миграцию данных из Yandex Cloud в локальную БД. На вашем сервере всегда будет актуальная копия данных, пригодная для аварийного восстановления.
Организация разработки и разделение нагрузки
Если разработчики, тестировщики или аналитики вашего продукта используют инфраструктуру Yandex Cloud, то вы быстро организуете окружение для нового участника. За актуальную копию данных в окружении отвечает Data Transfer.
Схема работает и в обратном направлении, когда актуальная стабильная версия сервиса базируется в Yandex Cloud, а для организации рабочего процесса необходима реплика данных в локальных базах. При этом основная БД не будет испытывать лишнюю нагрузку.
Разделение и объединение БД
С помощью Data Transfer можно разделить БД и в каждую новую базу можно перенести разный набор таблиц исходной базы. Также с его помощью можно объединить несколько БД. Например, при миграции в Yandex Cloud вы соберёте данные в единую БД в одном из сервисов управляемых БД. Объединяются только однородные БД.
📂 YandexCloud | Последнее изменение: 15.08.2024 11:49