Sem categoria

consistente: ser ou não ser

Essa é a questão.

Isso é do ponto de vista do cliente, sem uma partição e/ou failover.

MongoDB

Os dados no MongoDB são consistentes?

O MongoDB executa operações de leitura e gravação no nó primário, e os dados são consistentes. No entanto, o desempenho é limitado porque os clientes não aproveitam os nós secundários. A primeira alternativa é executar operações de leitura em todos os nós, primários e secundários. O desempenho da leitura é melhor, mas os dados não são mais consistentes porque a replicação é assíncrona por padrão. A segunda alternativa é a replicação síncrona. Os dados são consistentes, mas o desempenho de gravação é pior.

  • Primário
    • Desempenho médio de leitura, desempenho médio de gravação
    • Dados consistentes
  • Primário + secundário (assíncrono)
    • Alto desempenho de leitura, médio desempenho de gravação
    • Dados eventualmente consistentes
  • Primário + secundário (síncrono)
    • Alto desempenho de leitura, baixo desempenho de gravação
    • Dados consistentes

Os dados podem ou não ser consistentes.

Servidor Couchbase

Os dados no Couchbase Server são consistentes?

O Couchbase Server executa todas as operações de leitura e gravação no nó primário, e os dados são consistentes. O desempenho é alto porque os clientes aproveitam todos os nós. Isso ocorre porque cada nó é um nó primário.

  • Padrão
    • Alto desempenho de leitura, alto desempenho de gravação
    • Dados consistentes

Os dados são consistentes.

Particionado versus replicado

O Couchbase Server e o MongoDB implementam o particionamento e a replicação. No entanto, as implementações são diferentes.

No MongoDB, uma partição é armazenada em um conjunto de réplicas. Um conjunto de réplicas consiste em um nó primário e vários nós secundários. Se houvesse nove nós, haveria três conjuntos de réplicas com operações de gravação distribuídas para os três nós primários. No Couchbase Server, cada nó é um nó primário ativo e um nó secundário passivo. Se houvesse nove nós, haveria nove nós primários com operações de gravação distribuídas a todos eles (9). Essa é uma descrição de alto nível de como os dados são particionados e replicados no Couchbase Server. Uma descrição de baixo nível está disponível na documentação sobre vBuckets (link).

Se os dados forem replicados, o MongoDB precisará de vinte e sete nós para distribuir as operações de gravação para nove nós.

Observação

O MongoDB depende de um único bloqueio por banco de dados e por nó (link & link). O Couchbase Server depende de bloqueios de documentos (mais). O Couchbase Server não apenas utiliza mais nós para executar gravações, mas também executa mais gravações por nó.

Discutir

Reddit

Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Autor

Postado por Shane Johnson, diretor de marketing de produtos da Couchbase

Shane K Johnson foi diretor de marketing de produtos da Couchbase. Antes da Couchbase, ele ocupou várias funções de desenvolvimento e evangelismo com experiência em Java e sistemas distribuídos. Ele prestou consultoria a organizações dos setores financeiro, de varejo, telecomunicações e mídia para elaborar e implementar arquiteturas que dependiam de sistemas distribuídos para dados e análises.

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.