MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB vs Cassandra


Muitas leituras em cada consulta, menos gravações regulares

Ambos os bancos de dados têm bom desempenho em leituras em que o conjunto de dados dinâmicos cabe na memória. Ambos também enfatizam modelos de dados sem junção (e incentivam a desnormalização), e ambos fornecem índices em documentos ou linhas, embora os índices do MongoDB sejam atualmente mais flexíveis.

O mecanismo de armazenamento do Cassandra fornece gravações em tempo constante, independentemente do tamanho do seu conjunto de dados. As gravações são mais problemáticas no MongoDB, em parte por causa do mecanismo de armazenamento baseado em b-tree, mas mais por causa do bloqueio de multigranularidade que ele faz.

Para análise, o MongoDB fornece uma implementação personalizada de mapa/redução; O Cassandra fornece suporte nativo ao Hadoop, inclusive para Hive (um data warehouse SQL construído no Hadoop map/reduce) e Pig (uma linguagem de análise específica do Hadoop que muitos consideram mais adequada para map/reduce workloads do que SQL). Cassandra também suporta o uso do Spark.

Não se preocupe com a escalabilidade "maciça"

Se você estiver olhando para um único servidor, o MongoDB provavelmente é mais adequado. Para aqueles mais preocupados com o dimensionamento, a arquitetura sem ponto único de falha do Cassandra será mais fácil de configurar e mais confiável. (O bloqueio de gravação global do MongoDB também tende a se tornar mais doloroso.) O Cassandra também oferece muito mais controle sobre como sua replicação funciona, incluindo suporte para vários data centers.

Mais preocupado com configuração, manutenção e código simples

Ambos são triviais de configurar, com padrões razoáveis ​​para um único servidor. O Cassandra é mais simples de configurar em uma configuração multi-servidor, pois não há nós de função especial com os quais se preocupar.

Se você estiver usando blobs JSON no momento, o MongoDB é uma combinação insanamente boa para o seu caso de uso, já que usa BSON para armazenar os dados. Você poderá ter dados mais ricos e consultáveis ​​do que em seu banco de dados atual. Esta seria a vitória mais significativa para Mongo.