Análise do Couchbase

Couchbase 6.5 - Consistência de varredura no Analytics

Desde o GA em novembro de 2018, o Couchbase Analytics está sendo usado em vários setores verticais para obter insights rapidamente - análise ad-hoc por um provedor de pagamento, análise de carrinho de compras por um varejista eletrônico, mecanismo de reserva de passagens de última geração por uma companhia aérea global, movimento em tempo real de carrinhos de comida dentro de um estádio de beisebol à medida que os fãs o enchem - e muito mais.

Na versão inicial, um dos objetivos do projeto do sistema era a disponibilidade do serviço Analytics para executar consultas mesmo quando operações de reequilíbrio, failover ou reversão estivessem sendo realizadas em um cluster. Como resultado, o serviço Analytics retornaria os resultados da consulta mesmo quando os dados estivessem sendo movidos ou reparticionados. Esse design foi adaptado para a produtividade do desenvolvedor e permitiu que as equipes de DevOps reequilibrassem, fizessem failover ou revertessem de forma independente um cluster do Couchbase.

À medida que os clientes implementam o Analytics na produção, uma solicitação comum é garantir que não sejam retornados resultados não monotônicos. Comportamento não monotônico é quando uma consulta avaliada em um determinado momento C retorna um resultado que era atual no momento A, um ponto muito anterior no tempo, com consultas intermediárias que retornaram resultados mais recentes. A figura abaixo ilustra o conceito.

Isso é especialmente verdadeiro para clientes que executam aplicativos críticos para os negócios no Couchbase, como gastos do consumidor, vendas por trimestre, itens no carrinho de compras, inventário etc. Os clientes não querem que os relatórios, os painéis, as análises e, consequentemente, os insights sejam afetados pelas operações do cluster durante a execução desses aplicativos essenciais aos negócios. 

Para garantir que as consultas futuras só retornem quando a ingestão de dados no Analytics voltar ao estado em que as consultas foram executadas anteriormente, estamos introduzindo a "consistência de varredura" na próxima versão. 

A consistência da varredura refere-se ao fato de que os dados no serviço Analytics são consistentes com o estado dos dados no serviço de dados. 

O objetivo da consistência da varredura é evitar o comportamento não monotônico, não retornando os resultados da consulta antes que um estado anteriormente válido seja alcançado novamente.

Para fazer isso, basta definir as preferências apropriadas no query workbench. Anexei uma captura de tela abaixo com a preferência "scan consistency" definida como uma das seguintes:

  • not_bounded
  • request_plus

not_bounded (padrão):

Semelhante ao comportamento na versão 6.0, a consulta será avaliada imediatamente com base nos dados atuais que foram ingeridos (ou reingressados no caso de uma reversão significativa).

request_plus:

Antes de executar a consulta, os conjuntos de dados necessários para responder à consulta serão identificados e o Analytics recuperará o estado atual dos compartimentos dos nós de dados que alimentam esses conjuntos de dados. A consulta não será executada até que os conjuntos de dados tenham ingerido todos os dados até o estado do bucket quando a solicitação de consulta foi recebida. 

Opcionalmente, você também pode especificar o tempo de espera antes do tempo limite de uma consulta usando a opção "scan_wait" parâmetro. 

A request_plus com uma consulta scan_wait terá um tempo limite se o nível solicitado de consistência da varredura não for alcançado dentro do tempo especificado. 

Recursos

Baixar

Faça o download do Couchbase Server 6.5

Documentação

Notas de versão do Couchbase Server 6.5

Couchbase Server 6.5 O que há de novo

Blogs

Blog: Anunciando o Couchbase Server 6.5 - O que há de novo e aprimorado

Blog: O Couchbase traz as transações ACID multi-documento distribuídas para o NoSQL

Todos os blogs 6.5

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

Autor

Postado por Sachin Smotra, diretor de gerenciamento de produtos, Couchbase

A carreira de Sachin Smotra abrange mais de 15 anos de desenvolvimento de produtos de software em vários domínios, incluindo software Java Enterprise, soluções DRM para jogos móveis e conferências na Web. Como diretor de gerenciamento de produtos da Couchbase, ele é um líder de produto prático responsável pelas linhas de produtos Couchbase Mobile, IOT e Analytics, incluindo a divulgação da estratégia e da visão do produto com clientes, parceiros, desenvolvedores e analistas. Antes de ingressar na Couchbase, Sachin foi gerente sênior de gerenciamento de produtos na Cisco WebEx, onde liderou a equipe de produtos responsável por transformar a experiência do cliente de ponta a ponta em todo o ciclo de vida do produto WebEx - consideração, compra, uso e renovação. Antes de trabalhar na Cisco, Sachin trabalhou em diferentes startups em uma série de funções nas áreas de engenharia, arquitetura, gerenciamento de produtos e alianças.

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.