Вопросы и ответы про Managed Service for PostgreSQL

Общие вопросы

Что такое Managed Service for PostgreSQL?

Managed Service for PostgreSQL — это сервис, который помогает вам создавать, эксплуатировать и масштабировать базы данных PostgreSQL в облачной инфраструктуре.

С Managed Service for PostgreSQL вы можете:

  • создавать базы данных с необходимыми параметрами производительности;
  • масштабировать вычислительные мощности и выделенный объем хранилища для баз данных по мере необходимости;
  • получать журналы работы баз данных.

Managed Service for PostgreSQL берет на себя трудоемкие задачи администрирования инфраструктуры PostgreSQL:

  • предоставляет мониторинг потребляемых ресурсов;
  • автоматически создает резервные копии баз данных;
  • обеспечивает отказоустойчивость за счет автоматического переключения на резервные реплики;
  • своевременно обновляет программное обеспечение СУБД.

Вы взаимодействуете с кластером БД в Managed Service for PostgreSQL как с обычной базой данных в вашей локальной инфраструктуре. Благодаря этому вы можете управлять внутренними настройками БД в соответствии с требованиями вашего приложения.

Какую часть работы по управлению и сопровождению баз данных берет на себя Managed Service for PostgreSQL?

При создании кластеров Managed Service for PostgreSQL выделяет ресурсы, устанавливает СУБД и создает базы данных.

Для созданных и запущенных баз данных Managed Service for PostgreSQL автоматически создает резервные копии, а также устанавливает исправления и обновления СУБД.

Также Managed Service for PostgreSQL обеспечивает репликацию данных между хостами БД (как внутри, так и между зонами доступности) и автоматически переключает нагрузку на резервную реплику в случае аварии.

Для каких задач стоит использовать Managed Service for PostgreSQL, а для каких виртуальные машины с базами данных?

Яндекс.Облако предлагает два варианта работы с базами данных:

  • Managed Service for PostgreSQL позволяет вам эксплуатировать шаблонные базы данных, не заботясь об администрировании.
  • Виртуальные машины Yandex Compute Cloud позволяют вам создавать и настраивать собственные базы данных. Такой подход позволяет использовать любые СУБД, подключаться к базам данных по SSH и так далее.

Что такое хост базы данных и кластер базы данных?

Хост БД — это изолированная среда базы данных в облачной инфраструктуре с выделенными вычислительными ресурсами и зарезервированным объемом хранилища данных.

Кластер БД — это один или более хостов БД, между которыми можно настроить репликацию.

Как начать работу с Managed Service for PostgreSQL?

Managed Service for PostgreSQL доступен всем зарегистрированным пользователям Яндекс.Облака.

Чтобы создать кластер базы данных в Managed Service for PostgreSQL, необходимо определиться с его характеристиками:

  • Класс хостов (характеристики производительности — процессоры, память и т. п.).
  • Объем хранилища (резервируется в полном объеме при создании кластера).
  • Сеть, к которой будет подключен ваш кластер.
  • Количество хостов для кластера и зона доступности для каждого хоста вы можете выбрать зону доступности.

Подробные инструкции см. в разделе Как начать работать с Managed Service for PostgreSQL.

Сколько хостов БД может содержать кластер?

Для сетевого NBS-хранилища количество хостов в кластере ограничено только запрошенными вычислительными ресурсами и объемом хранилища для кластера.

Для хранилища на NVMe-дисках количество хостов ограничено при создании: для PostgreSQL-кластеров можно создать не меньше 3 хостов.

Как получить доступ к запущенному хосту базы данных?

Вы можете подключаться к базам данных Managed Service for PostgreSQL способами, стандартными для СУБД.

Подробнее о подключении к кластерам.

Сколько кластеров можно создать в рамках одного облака?

Технические и организационные ограничения MDB приведены в разделе Квоты и лимиты.

Как происходит обслуживание кластеров БД?

Под обслуживанием в Managed Service for PostgreSQL понимается:

  • автоматическая установка обновлений и исправлений СУБД для ваших хостов БД;
  • изменение класса хостов и объема хранилища;
  • другие сервисные работы Managed Service for PostgreSQL.

Какую версию PostgreSQL использует Managed Service for PostgreSQL?

Managed Service for PostgreSQL поддерживает PostgreSQL 10 и 11, а также PostgreSQL 10 для 1C.

Что происходит, когда выпускается новая версия СУБД?

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

Что происходит, когда версия СУБД становится неподдерживаемой (deprecated)?

Через месяц после того, как версия СУБД становится неподдерживаемой, Managed Service for PostgreSQL автоматически оповещает владельцев кластеров БД, созданных с этой версией, по электронной почте.

Создание новых хостов с СУБД неподдерживаемых версий становится невозможным. Через 7 дней после оповещения для минорных версий и через 1 месяц для мажорных версий проводится автоматическое обновление кластеров БД до следующей поддерживаемой версии. Обновление неподдерживаемых мажорных версий происходит даже если у вас отключено автоматическое обновление.

Как рассчитывается стоимость потребления для хоста базы данных?

В Managed Service for PostgreSQL стоимость потребления рассчитывается исходя из следующих параметров:

  • Выбранный класс хостов.
  • Объем хранилища, зарезервированного для хоста БД.
  • Объем резервных копий кластера БД. Объем резервных копий, равный объему хранилища, не тарифицируется. Хранение резервных копий сверх этого объема оплачивается по тарифам.
  • Количество часов работы хоста БД. Неполные часы округляются до целого значения. Стоимость часа работы для каждого класса хостов приведена в разделе Правила тарификации для Managed Service for PostgreSQL.

Как изменить вычислительные ресурсы и объем хранилища для кластера БД?

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

Характеристики кластера изменяются в течение 30 минут. В этот период также могут быть включены другие сервисные работы по кластеру, например, установка обновлений.

Включено ли резервное копирование хостов БД по умолчанию?

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

По умолчанию резервные копии хранятся 7 дней.

Когда выполняется резервное копирование? Доступен ли кластер БД во время резервного копирования?

Окно резервного копирования — это интервал времени, в течение которого выполняется ежедневное полное резервное копирование кластера БД. Окно резервного копирования — 01:00−05:00 по московскому времени.

Во время окна резервного копирования кластеры остаются полностью доступными.

За какими метриками и процессами можно следить с помощью мониторинга?

Для всех типов СУБД можно отслеживать:

  • загрузку процессора, памяти, сети, дисков в абсолютных величинах;
  • загрузку памяти, сети, дисков в процентах от установленных лимитов для класса хостов соответствующего кластера;
  • объем данных кластера БД и остаток свободного места в хранилище данных.

Для всех хостов БД можно отслеживать метрики, специфические для типа соответствующей СУБД. Например для PostgreSQL можно отслеживать:

  • среднее время выполнения запроса;
  • количество запросов в секунду;
  • количество ошибок в журналах и т. д.

Мониторинг можно осуществлять с минимальной гранулярностью в 5 секунд.

Соответствует ли сервис требованиям закона №152-ФЗ О персональных данных?

Да. Вы можете ознакомиться с полным заключением по результатам аудита системы защиты.

Вопросы о PostgreSQL

Как импортировать данные в кластер базы данных PostgreSQL в Managed Service for PostgreSQL?

Используйте встроенный инструмент pg_dump для миграции данных в PostgreSQL-кластер Managed Service for PostgreSQL.

Какие версии PostgreSQL поддерживает Managed Service for PostgreSQL?

Managed Service for PostgreSQL поддерживает PostgreSQL 10 и 11, а также PostgreSQL 10 для 1C.

Включено ли резервное копирование кластеров БД по умолчанию?

Да, по умолчанию резервное копирование включено. Для PostgreSQL-кластеров выполняется полное резервное копирование один раз в сутки и сохраняются все журналы транзакций кластера БД. Это позволяет восстановить состояние кластера на любой момент времени в пределах периода хранения резервных копий, за исключением последних 30 секунд.

Шифруется ли соединение с кластером БД PostgreSQL?

Соединение между кластером БД и приложением всегда шифруется с использованием SSL. Отключить шифрование соединений с кластером нельзя.

Что такое реплика для чтения в PostgreSQL?

Реплика для чтения — это доступный только для чтения хост в кластере БД PostgreSQL, данные на котором синхронизируются с хостом-мастером (применимо только если в кластере работает более 1 хоста). Вы можете использовать реплику для чтения для снижения нагрузки на мастер в базах данных с большим объемом запросов на чтение.

Какие расширения для PostgreSQL поддерживаются в Managed Service for PostgreSQL?

Список поддерживаемых расширений для PostgreSQL приведен в разделе Управление PostgreSQL-расширениями.

Какие ограничения накладываются на кластеры БД PostgreSQL?

Подробнее об ограничениях Managed Service for PostgreSQL см. раздел Квоты и лимиты. В разделе Классы хостов приведены характеристики кластеров, которые можно создать с помощью Managed Service for PostgreSQL.

Какие значения LC_COLLATE и LC_CTYPE по умолчанию выставляются для баз данных?

По умолчанию для создаваемых баз данных выставляются значения LC_CTYPE=C и LC_COLLATE=C. Для базы данных, которую вы создаете вместе с кластером, эти настройки изменить нельзя, но вы можете создать новую базу и указать нужные значения для неё.