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


Общие сведения о распределенных базах данных NoSQL

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

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

Дополнительные сведения о других вариантах хранения данных в Azure см. в разделе "Выбор правильного хранилища данных" в Центре архитектуры Azure.

Сложности

Одна из проблем при обслуживании системы базы данных заключается в том, что многие ядра СУБД применяют блокировки и блоки для применения строгой семантики ACID. Этот подход подходит в сценариях, когда базам данных требуется высокая согласованность состояния данных независимо от способа доступа. Хотя этот подход обещает высокую согласованность, он делает тяжелые компромиссы в отношении параллелизма, задержки и доступности. Это ограничение по сути является ограничением архитектуры и принудит любой команде с высокой транзакционной рабочей нагрузкой найти обходные пути, такие как распределение вручную или сегментирование данных между различными базами данных или узлами баз данных. Эти обходные пути могут быть трудоемкими и сложными для реализации.

Базы данных NoSQL

Базы данных NoSQL относятся к базам данных , которые были разработаны для упрощения горизонтального масштабирования путем корректировки согласованности, чтобы свести к минимуму компромиссы для параллелизма, задержки и доступности. Базы данных NoSQL предлагают настраиваемые уровни согласованности, чтобы данные могли масштабироваться на нескольких узлах и предлагать скорость или доступность, которые лучше сопоставляются с потребностями приложения.

Распределенные базы данных

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

Azure Cosmos DB

Благодаря распределенной базе данных, которая также является базой данных NoSQL, высокая транзакционная рабочая нагрузка внезапно стала проще создавать и управлять ими. Azure Cosmos DB — это платформа баз данных, которая предлагает api распределенных данных как в NoSQL, так и в реляционных вариантах. В частности, многие API NoSQL предлагают различные варианты согласованности, которые позволяют точно настроить уровень согласованности или доступности, удовлетворяющий требованиям реального приложения. База данных может быть настроена для обеспечения высокой согласованности с компромиссами по скорости и доступности. Аналогичным образом можно настроить базу данных, чтобы обеспечить лучшую производительность с прогнозируемыми компромиссами по согласованности и задержке реплицированных данных. Azure Cosmos DB автоматически и динамически распределяет данные между локальными экземплярами или глобально. Azure Cosmos DB также может предоставлять гарантии и масштабируемую пропускную способность ACID для сопоставления с требованиями приложения.

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

Хотите приступить к работе с Azure Cosmos DB?