Различия между Azure Управляемый экземпляр для Apache Cassandra и Azure Cosmos DB для Apache Cassandra
В этой статье вы узнаете о различиях между Azure Управляемый экземпляр для Apache Cassandra и Azure Cosmos DB на основе ЕЗ для Apache Cassandra. Здесь собраны рекомендации по выбору между этими двумя службами и по размещению собственной среды Apache Cassandra.
Основные отличия
Azure Управляемый экземпляр для Apache Cassandra — это полностью управляемая служба для чистых кластеров Apache Cassandra с открытым кодом. Служба также позволяет переопределить конфигурации в зависимости от конкретных потребностей каждой рабочей нагрузки, что позволяет обеспечить максимальную гибкость и контроль при необходимости. Помимо этого, она позволяет масштабировать емкость существующих локальных и облачных кластеров Apache Cassandra. Масштабирование осуществляется путем добавления управляемых центров обработки данных Cassandra к существующему кругу кластера.
Azure Cosmos DB на основе ЕЗ для Apache Cassandra в Azure Cosmos DB — это уровень совместимости по глобально распределенной облачной службе базы данных Azure Cosmos DB корпорации Майкрософт.
Как правильно выбрать?
В следующей таблице описаны типичные сценарии, требования рабочих нагрузок и цели, для которых применимы эти подходы к развертыванию.
Локальная среда Apache Cassandra в локальной среде или в Azure | Управляемый экземпляр Azure для Apache Cassandra | Azure Cosmos DB for Apache Cassandra | |
---|---|---|---|
Тип развертывания | У вас есть развертывание Apache Cassandra с высоким уровнем персонализации, пользовательскими исправлениями или дополнениями. | У вас есть стандартное развертывание Apache Cassandra с открытым кодом, в котором вы не применяете собственный пользовательский код. | Вас устроит платформа, которая не основана на Apache Cassandra. Главное, чтобы на уровне сетевого протокола она была совместима со всеми клиентскими драйверами с открытым кодом. |
Операционные издержки | У вас уже есть специалисты по Cassandra, которые умеют развертывать, настраивать и обслуживать кластеры. | Вы хотите исключить операционные издержки с помощью полностью управляемой базы данных как службы для Apache Cassandra с открытым исходным кодом, но при необходимости можно управлять конфигурациями Cassandra, такими как репликация и согласованность. | Вы хотите избавиться от операционных издержек, перейдя на полностью управляемую базу данных в формате "платформа как услуга" в облаке. |
Поддержка рабочей среды | Вы обрабатываете динамические инциденты и сбои самостоятельно, включая обращение к соответствующим командам инфраструктуры для вычислений, сети, хранилища и т. д. | Вы хотите, чтобы управляемая служба была первой стороной, которая будет выступать в качестве единого магазина для поддержки динамических инцидентов и сбоев. | Вы хотите, чтобы управляемая служба была первой стороной, которая будет выступать в качестве единого остановного магазина для живых инцидентов и сбоев. |
Поддержка программного обеспечения | Вы обрабатываете все исправления и гарантируете, что программное обеспечение обновляется до окончания срока жизни. | Вам нужен интерфейс управляемой службы, который будет предлагать поддержку уровня программного обеспечения Cassandra за пределами срока жизни, автоматического исправления и обновления ключей для основных версий. | Требуется интерфейс первой управляемой службы, где поддержка уровня программного обеспечения полностью абстрагируется. |
Требования к операционной системе | Есть необходимость поддерживать пользовательские или эталонные образы операционной системы для виртуальных машин. | Вы можете использовать образы ванили, но хотите контролировать выбор номеров SKU, памяти, дисков и операций ввода-вывода в секунду. | Вы хотите упростить подготовку производительности, выразив ее через одну нормализованную метрику с прямой зависимостью от пропускной способности, такую как единицы запроса в Azure Cosmos DB. |
Модель ценообразования | Вы хотите использовать для управления специализированное программное обеспечение, такое как средства Datastax, и готовы к затратам на лицензирование. | Вы предпочитаете использовать лицензии на ПО с открытым кодом, привязанные к экземплярам виртуальных машин. | Вы хотите использовать облачную структуру цен, которая учитывает технологии автомасштабирования и бессерверного выполнения. |
Аналитика | Вам нужен полный контроль над подготовкой аналитических конвейеров, и вас не пугают затраты на их создание и поддержку. | Вы хотите использовать облачные аналитические службы, например Azure Databricks. | Вы хотите почти в режиме реального времени гибридную аналитику транзакций, встроенную в платформу с Помощью Azure Synapse Link для Azure Cosmos DB. |
Структура рабочих нагрузок | Рабочая нагрузка не склонна быстро изменяться, и вам редко требуется масштабирование узлов в кластере. | Рабочая нагрузка очень нестабильна, и вам нужна возможность быстро увеличивать и уменьшать число узлов в центре обработки данных, а также добавлять и удалять центры обработки данных. | Рабочая нагрузка часто изменяется, и вам нужна возможность быстро увеличивать или уменьшать производительность системы в широких пределах. |
Соглашения об уровне обслуживания | Вас устраивают существующие процессы, предназначенные для соблюдения соглашений об уровне обслуживания по параметрам согласованности, пропускной способности, доступности и аварийного восстановления. | Вы удовлетворены процессами поддержания соглашений об уровне обслуживания по согласованности и пропускной способности, но хотите соглашение об уровне обслуживания для доступности и нуждаетесь в помощи в резервном копировании. | Вы хотите полностью комплексные соглашения об уровне обслуживания для обеспечения согласованности, пропускной способности, доступности и аварийного восстановления. |
Репликация и согласованность | Необходимо настроить полный массив параметров согласованности, доступных в Apache Cassandra для пути чтения и записи. | Необходимо настроить полный массив параметров согласованности, доступных в Apache Cassandra для пути чтения и записи. | Согласованность пути чтения одного (в конечном итоге) или ALL (строгого) достаточно для всех приложений (см. также сопоставление уровней согласованности Cassandra). |
Модель данных | Вы переносите рабочие нагрузки, которые имеют сочетание равномерного распределения данных и смещенных данных (в отношении хранилища и пропускной способности между ключами секций), требующих гибкости в вертикальном масштабе узлов. | Вы переносите рабочие нагрузки, которые имеют сочетание равномерного распределения данных и смещенных данных (в отношении хранилища и пропускной способности между ключами секций), требующих гибкости в вертикальном масштабе узлов. | Вы создаете новое приложение или существующее приложение имеет относительно равномерное распределение данных в отношении хранилища и пропускной способности между ключами секций. |