Уровни согласованности для Azure Cosmos DB и API для MongoDB

ПРИМЕНИМО К: Mongodb

В отличие от Azure Cosmos DB, MongoDB изначально не предоставляет точно определенные гарантии согласованности. Вместо этого MongoDB позволяет пользователям настраивать следующие гарантии согласованности: гарантия записи, гарантия чтения и директива isMaster для направления операций чтения к первичным или вторичным репликам с целью достижения требуемого уровня согласованности.

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

Примечание

По умолчанию для Azure Cosmos DB используется модель согласованности Session. Session — это ориентированная на клиента модель согласованности, которая изначально не поддерживается ни в Cassandra, ни в MongoDB. Дополнительные сведения о выборе модели согласованности см. в статье Уровни согласованности в Azure Cosmos DB

При использовании API службы Azure Cosmos DB для MongoDB:

  • Проблема записи сопоставляется с уровнем согласованности по умолчанию, настроенным в учетной записи Azure Cosmos DB.

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

  • Вы можете добавить заметки к определенному региону, связанному с вашей учетной записью Azure Cosmos DB, как "Основной", сделав этот регион первым регионом для записи.

Сопоставление уровней согласованности

В следующей таблице показано, как собственные задачи записи и чтения MongoDB сопоставляются с уровнями согласованности Azure Cosmos DB при использовании API Azure Cosmos DB для MongoDB.

Сопоставление модели согласованности MongoDB

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

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

Дальнейшие действия

Узнайте больше о глобальном распределении и уровнях согласованности в Azure Cosmos DB: