Поделиться через


Периодическое резервное копирование и восстановление в Azure Cosmos DB

Область применения: Nosql Mongodb Кассандра Гремлин Таблица

Azure Cosmos DB автоматически копирует все ваши данные с регулярными интервалами. Автоматическое резервное копирование не влияет на производительность или доступность операций баз данных. Для обеспечения устойчивости в случае региональной аварии все резервные копии хранятся отдельно в службе хранилища, а также глобально реплицируются. Azure Cosmos DB обеспечивает высокую избыточность и устойчивость к региональным авариям не только ваших данных, но и их резервных копий.

Как Azure Cosmos DB выполняет резервное копирование данных

Ниже описано, как Azure Cosmos DB выполняет резервное копирование данных.

  • Azure Cosmos DB автоматически создает полную резервную копию базы данных каждые 4 часа, из которых в любой момент времени по умолчанию сохраняются только последние 2. Если интервалов по умолчанию недостаточно для рабочих нагрузок, можно изменить интервал резервного копирования и срок хранения на портале Azure. Вы можете изменить конфигурацию резервного копирования во время или после создания учетной записи Azure Cosmos DB. Если контейнер или база данных удалены, Azure Cosmos DB сохраняет существующие моментальные снимки заданного подготовленного контейнера пропускной способности или общей базы данных пропускной способности в течение 30 дней. Если пропускная способность подготовлена на уровне базы данных, процесс резервного копирования и восстановления выполняется во всей области базы данных.

  • Azure Cosmos DB хранит эти резервные копии в хранилище BLOB-объектов, а сами данные хранятся локально в Azure Cosmos DB.

  • Чтобы задержка была не длительной, моментальный снимок резервной копии хранится в хранилище BLOB-объектов Azure в текущем регионе записи (или одном из регионов записи при конфигурации с несколькими источниками). Чтобы можно было обеспечить устойчивость к региональным авариям, каждый моментальный снимок данных резервной копии в хранилище BLOB-объектов Azure повторно реплицируется в другой регион через геоизбыточное хранилище (GRS). Регион, в который реплицируется резервная копия, зависит от региона источника и региона, который составляет с ним пару. Чтобы узнать больше, ознакомьтесь со списком геоизбыточных пар регионов Azure. У вас нет прямого доступа к этой резервной копии. Команда Azure Cosmos DB восстанавливает резервную копию при запросе через запрос в службу поддержки.

    На следующем рисунке показано, как контейнер Azure Cosmos DB со всеми тремя основными физическими секциями в Западной части США. Контейнер создается в удаленной учетной записи Хранилище BLOB-объектов Azure в западной части США, а затем реплицируется в восточную часть США:

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

  • Резервное копирование не влияет на производительность или доступность приложения. Azure Cosmos DB выполняет резервное копирование данных в фоновом режиме, не используя дополнительную пропускную способность (ЕЗ) и не снижая производительность и доступность базы данных.

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

Что восстанавливается в новой учетной записи?

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

Что не восстанавливается?

Следующие конфигурации не восстанавливаются после восстановления до точки во времени.

  • Подмножество контейнеров в базе данных общей пропускной способности невозможно восстановить. Всю базу данных можно восстановить в целом.
  • Ключи учетной записи базы данных. Восстановленная учетная запись будет создана с помощью новых ключей учетной записи базы данных.
  • Параметры брандмауэра, виртуальной сети, плоскости данных RBAC или частной конечной точки.
  • Регионы. Восстановленная учетная запись будет только одной учетной записью региона, которая является областью записи исходной учетной записи.
  • Хранимые процедуры, триггеры и определяемые пользователем функции.
  • Назначения управления доступом на основе ролей. Их потребуется повторно назначить.
  • Документы, которые были удалены из-за истекшим сроком жизни.
  • Аналитические данные, если включена ссылка synapse.
  • Материализованные представления

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

Для учетных записей с поддержкой Azure Synapse Link данные аналитического хранилища не включаются в резервное копирование и восстановление. Если Azure Synapse Link включена, Azure Cosmos DB продолжает автоматически создавать резервные копии данных в хранилище транзакций в запланированном интервале резервного копирования. Автоматическое резервное копирование и восстановление данных в аналитическом хранилище на данный момент не поддерживается.

Общие сведения о стоимости резервных копий

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

Например, рассмотрим сценарий, в котором срок хранения резервных копий настроен на 240 часов (или 10 дней), а интервал резервного копирования настроен на 24 часа. Эта конфигурация подразумевает наличие 10 копий данных резервного копирования. Если у вас есть 1 ТБ данных в регионе Azure west US, стоимость хранилища резервных копий в течение заданного месяца будет следующим: 0.12 * 1000 * 8

Необходимые разрешения для управления хранением или восстановлением

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

Управление периодическими резервными копиями в Azure Cosmos DB вручную

С помощью API Azure Cosmos DB для учетных записей NoSQL можно также поддерживать собственные резервные копии с помощью одного из следующих подходов:

Azure Data Factory

Используйте Фабрика данных Azure для периодического перемещения данных в выбранное решение хранилища.

Канал изменений Azure Cosmos DB

периодическое считывание полных резервных копий, а также добавочных изменений с помощью канала изменений Azure Cosmos DB и их сохранение в собственном хранилище.

Следующие шаги