Diferenças entre a Instância Gerenciada do Azure para Apache Cassandra e o Azure Cosmos DB for Apache Cassandra

Neste artigo, você aprenderá as diferenças entre a Instância Gerenciada do Azure para Apache Cassandra e o Azure Cosmos DB for Apache Cassandra baseado em RU. Este artigo fornece recomendações de como escolher entre os dois serviços ou quando hospedar seu próprio ambiente do Apache Cassandra.

Principais diferenças

A Instância Gerenciada do Azure para Apache Cassandra é um serviço totalmente gerenciado para clusters Apache Cassandra de código aberto puro. O serviço também permite que as configurações sejam substituídas, dependendo das necessidades específicas de cada carga de trabalho, permitindo a máxima flexibilidade e controle quando necessário. Ela também permite escalar horizontalmente a capacidade dos clusters Apache Cassandra existentes auto-hospedados na nuvem ou locais. Ela escala horizontalmente adicionando datacenters do Cassandra gerenciados ao anel do cluster existente.

O Azure Cosmos DB for Apache Cassandra baseado em RU no Azure Cosmos DB é uma camada de compatibilidade sobre o serviço de banco de dados nativo em nuvem distribuído globalmente da Microsoft Azure Cosmos DB.

Como escolher?

A tabela a seguir mostra cenários comuns, requisitos de carga de trabalho e aspirações em que cada uma dessas abordagens de implantação se encaixa:

Apache Cassandra auto-hospedado no local ou no Azure Instância Gerenciada do Azure para Apache Cassandra Azure Cosmos DB for Apache Cassandra
Tipo de implantação Você tem uma implantação do Apache Cassandra altamente personalizada com snitches ou patches personalizados. Você tem uma implantação do Apache Cassandra de software livre padrão sem nenhum código personalizado. Você está satisfeito com uma plataforma sem o Apache Cassandra subjacente, mas está em conformidade com todos os drivers de cliente de software livre no nível do protocolo de transmissão.
Sobrecarga operacional Você tem especialistas em Cassandra que podem implantar, configurar e manter seus clusters. Você deseja eliminar a sobrecarga operacional usando um Banco de Dados como Serviço totalmente gerenciado para o Apache Cassandra de código aberto, mas tem a opção de controlar configurações específicas do Cassandra, como replicação e consistência, quando necessário. Você deseja eliminar a sobrecarga operacional usando um banco de dados de plataforma como serviço totalmente gerenciado na nuvem.
Suporte de produção Você mesmo lida com incidentes e interrupções em tempo real, incluindo o contato com as equipes de infraestrutura relevantes para computação, rede, armazenamento etc. Você deseja uma experiência de serviço gerenciado interno que atue como uma loja única para dar suporte a incidentes e interrupções ao vivo. Você deseja uma experiência de serviço gerenciado interno que funcione como uma loja única para incidentes e interrupções em tempo real.
Suporte do Software Você cuida de todos os patches e garante que o software seja atualizado antes do fim da vida útil. Você deseja uma experiência de serviço gerenciado primário que oferecerá suporte ao nível de software do Cassandra além do fim da vida útil, aplicação de patch automatizada e atualizações prontas para uso para versões principais Você deseja uma experiência de serviço gerenciado interno, em que o suporte no nível do software seja totalmente abstraído.
Requisitos do sistema operacional Você tem o requisito de manter imagens personalizadas ou de ouro do sistema operacional da Máquina Virtual. Você pode usar imagens básicas, mas quer ter controle sobre a seleção de SKUs, memória, discos e IOPS. Você quer que o provisionamento de capacidade seja simplificado e expresso como uma só métrica normalizada, com uma relação de um para um com a taxa de transferência, como as unidades de solicitação no Azure Cosmos DB.
Modelo de preços Você deseja usar software de gerenciamento, como as ferramentas do Datastax, e está satisfeito com os custos de licenciamento. Você prefere ter apenas licenciamento de software livre e o preço baseado em instâncias de VM. Você deseja usar preços nativos de nuvem, que incluem o dimensionamento automático e as ofertas sem servidor.
Análise Você deseja ter controle total sobre o provisionamento de pipelines analíticos, independentemente da sobrecarga para criá-los e mantê-los. Você deseja usar serviços analíticos baseados em nuvem, como o Azure Databricks. Você quer ter análise transacional híbrida quase em tempo real incorporada à plataforma com o Link do Azure Synapse para Azure Cosmos DB.
Padrão da carga de trabalho O estado de carga de trabalho é razoavelmente estável e você não precisa dimensionar os nós do cluster com frequência. A carga de trabalho é volátil e você precisa ser capaz de escalar ou reduzir verticalmente os nós em um datacenter ou de adicionar/remover datacenters facilmente. A carga de trabalho costuma ser volátil e você precisa ser capaz de escalar ou reduzir verticalmente com rapidez e em volumes significativos.
SLAs Você está satisfeito com seus processos para manter os SLAs em termos de consistência, taxa de transferência, disponibilidade e recuperação de desastre. Você está satisfeito com seus processos para manter os SLAs em termos de consistência e taxa de transferência, mas deseja um SLA de disponibilidade e precisa de ajuda com backups. Você quer SLAs totalmente abrangentes em termos de consistência, taxa de transferência, disponibilidade e recuperação de desastre.
Replicação e consistência Você precisa definir a matriz completa de configurações de consistência ajustáveis disponíveis no Apache Cassandra para o caminho de leitura e gravação. Você precisa definir a matriz completa de configurações de consistência ajustáveis disponíveis no Apache Cassandra para o caminho de leitura e gravação. Uma consistência de caminho de leitura ONE (eventual) ou ALL (forte) é suficiente para todos os seus aplicativos (confira também mapeando os níveis de consistência do Cassandra)
Modelo de dados Você está migrando cargas de trabalho que têm uma mistura de distribuição uniforme de dados e dados distorcidos (em relação ao armazenamento e à taxa de transferência entre chaves de partição) que exigem flexibilidade na escala vertical de nós. Você está migrando cargas de trabalho que têm uma mistura de distribuição uniforme de dados e dados distorcidos (em relação ao armazenamento e à taxa de transferência entre chaves de partição) que exigem flexibilidade na escala vertical de nós. Você está criando um novo aplicativo ou seu aplicativo existente tem uma distribuição relativamente uniforme de dados em relação ao armazenamento e à taxa de transferência nas chaves de partição.

Próximas etapas