Оптимизация затрат на использование нескольких регионов в Azure Cosmos DB

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

Добавить или удалить регионы в учетной записи Azure Cosmos DB можно в любое время. Пропускная способность, настроенная для различных баз данных и контейнеров Azure Cosmos DB, зарезервирована в каждом регионе, связанном с вашей учетной записью. Если пропускная способность, подготовленная в час, является суммой единиц запросов в секунду (ЕЗ/с), настроенной во всех базах данных и контейнерах для учетной записи Azure Cosmos DB, а T количество регионов Azure, связанных с учетной записью базы данных, равно общей подготовленной пропускной способности для учетной записи NAzure Cosmos DB в течение определенного часа T x N равно ЕЗ/с.

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

Затраты нескольких регионов записи

В системе записи с несколькими регионами чистая доступность ЕЗ/с для операций записи увеличивает N время, когда N число регионов записи. В отличие от операций записи в одном регионе, теперь все регионы доступны для записи и поддерживают разрешение конфликтов. С точки зрения планирования затрат для выполнения M операций записи в секунду по всему миру необходимо настроить M ЕЗ/с на уровне контейнера или базы данных. Затем можно добавить столько регионов, сколько вы хотели бы, и использовать их для записи для выполнения M запросов в секунду по всему миру.

Пример

Рассмотрим, что у вас есть контейнер в сценарии записи в одном регионе. Этот контейнер подготовлен с пропускной способностью 10K ЕЗ/с и сохраняет 0.5 ТБ данных в этом месяце. Теперь предположим, что вы добавите другой регион с одинаковым хранилищем и пропускной способностью, и вы хотите, чтобы возможность записи в контейнеры в обоих регионах из приложения.

В этом примере описано новое общее ежемесячное потребление:

Ежемесячное использование
Счет за пропускную способность для контейнера в одном регионе записи 10K RU/s * 730 hours
Счет за пропускную способность для контейнера в нескольких регионах записи (два) 2 * 10K RU/s * 730 hours
счет за служба хранилища для контейнера в одном регионе записи 0.5 TB (or 512 GB)
служба хранилища счет за контейнер в двух регионах записи 2 * 0.5 TB (or 1,024 GB)

Примечание.

В этом примере предполагается 730 часов в месяц.

Повышение эффективности использования пропускной способности для региона

Если у вас есть неэффективное использование, можно предпринять шаги, чтобы сделать максимальное использование ЕЗ/с в регионах чтения с помощью канала изменений из региона чтения. Кроме того, вы можете перейти на другую вторичную, если используется чрезмерно. Например, один или несколько недостаточно используемых регионов чтения считаются неэффективными. Сначала необходимо оптимизировать подготовленную пропускную способность (ЕЗ/с) в регионе записи.

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