Leia sua própria gravação? 50 vezes mais rápido no Couchbase Server 3.0 com exibições Incremental Map/Reduce

O RYOW (read your own write, leia sua própria gravação) pode ser complicado com alguns dos bancos de dados NoSQL, mas não com o Couchbase Server. Com o Couchbase Server ativo, o vbucket assume as gravações e leituras por padrão (embora você possa ler das réplicas a qualquer momento), o que significa que, em estado estável, você pode ler suas próprias gravações... sem problemas! O Couchbase Server grava primeiro na memória e replica rapidamente por meio do DCP para as réplicas e persiste no disco. Você pode esperar por confirmações na replicação ou persistência quando emitir uma atualização. Esse ack lhe dá a mesma garantia de RYOW, mesmo em uma reinicialização de nó ou failover (também conhecido como sinalizadores ReplicateTo e PersistTo).

Quando se trata de consultas, ao contrário dos bancos de dados relacionais, as consultas do Couchbase Server oferecem a opção de ler o que foi processado na visualização sem esperar OU a consulta pode esperar até que todas as atualizações sejam processadas, até o ponto da solicitação de consulta para garantir RYOW na consulta. Portanto, a primeira é de baixa latência e é chamada de consulta com "stale=ok". E a posterior é conhecida como consulta "stale=false", que aguarda o processamento e, portanto, pode ter uma latência mais alta! As consultas do tipo stale=false são muito úteis. Imagine criar um aplicativo de mensagens. Se a mensagem que você enviou não aparecer na pasta "mensagens enviadas" (que normalmente é uma consulta de visualização), você poderá enviá-la novamente! Ou você salva uma nova lista de reprodução em seu aplicativo móvel, volta às suas listas de reprodução e, se não vir essa nova lista de reprodução, ficará confuso! Portanto, o stale-false é essencial!

Com esse histórico, vamos dar uma olhada em como a versão 3.0 melhora a situação. Para obter o RYOW em versões anteriores do Couchbase Server, você precisava fazer duas coisas;

  1. sua atualização precisa usar o sinalizador PersistTo
  2. Sua consulta precisa usar o sinalizador stale=false

Isso lhe daria RYOW em versões anteriores, como o Couchbase Server 2.5. O PersistTo obviamente reduz a velocidade do disco. No entanto, com a replicação de streaming (DCP) + Visualizações Incremental Map/Reduce, obter RYOW não requer mais persistTo no Couchbase Server 3.0. Esta é a aparência da mesma chamada na versão 3.0. Você não precisa mais de #1, portanto PersistTo.Zero.

A latência pode ser 50 vezes menor na versão 3.0 em comparação com as versões anteriores, como o Couchbase Server 2.5. Isso é um ótimo retorno para o investimento! Se você estiver usando exibições e precisar de consultas "stale=false", o Couchbase Server 3.0 lhe trará muitos benefícios. A atualização é fácil e on-line. Você pode fazer o download da versão 3.0 aqui.

Feliz teste.

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

Autor

Postado por Cihan Biyikoglu, diretor de gerenciamento de produtos, Couchbase

Cihan Biyikoglu é diretor de gerenciamento de produtos da Couchbase, responsável pelo produto Couchbase Server. Cihan é um entusiasta de big data que traz mais de vinte anos de experiência para a equipe de produtos da Redis Labs. Cihan começou sua carreira como desenvolvedor C/C++.

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.