Глобальное распределение данных с помощью Azure Cosmos DB

Современные приложения должны мгновенно реагировать на запросы и всегда иметь подключение к Интернету. Чтобы обеспечить низкую задержку и высокий уровень доступности, экземпляры этих приложений нужно развернуть в ближайших к пользователям центрах обработки данных. Такие приложения обычно развертываются в нескольких центрах обработки данных и называются глобально распределенными. Глобально распределенные приложения требуют использования глобально распределенной базы данных, которая может прозрачно реплицировать данные в любую точку мира, позволяя приложениям работать с копией данных, расположенной как можно ближе к пользователям.

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

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

Замечание

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

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

  • Общедоступное облако Azure, доступное по всему миру.

  • Microsoft Azure, обслуживаемая 21Vianet , доступна благодаря уникальному партнерству между Корпорацией Майкрософт и 21Vianet, одним из крупнейших интернет-поставщиков в Китае.

  • Azure для Германии предоставляет услуги в рамках модели доверенного лица данных, которая гарантирует, что данные клиентов остаются в Германии под контролем T-Systems International GmbH, дочерней компании Deutsche Telekom, выступающей в качестве доверенного лица по данным Германии.

  • Azure для государственных организаций доступен в четырех регионах Соединенных Штатов для государственных учреждений США и их партнеров.

  • Azure для государственных организаций для Министерства обороны США (DoD) доступен в двух регионах США для Министерства обороны США.

Схема, показывющая топологию развертывания с высоким уровнем доступности.

Ключевые преимущества глобального распределения

Создание глобальных приложений по шаблону "активный — активный". Новый протокол репликации с поддержкой записи в нескольких регионах позволяет каждому региону поддерживать как операции записи, так и чтения. Возможность записи в нескольких регионах также обеспечивает следующее:

  • Неограниченная эластичная масштабируемость для записи и чтения.

  • 99.999% доступность чтения и записи во всем мире.

  • гарантированные операции чтения и записи, выполняемые менее чем за 10 миллисекунд в 99-м процентиле.

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

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

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

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

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

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

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