Por que os serviços NoSQL "nascidos na nuvem" nem sempre vencem

NoSQL não é tudo igual

Couchbase tem sido reconhecida como líder em NoSQL pela Forrester Research em seu recente relatório 'The Forrester Wave™: Big Data NoSQL, 1º trimestre de 2019.' A Forrester identificou as 15 empresas mais importantes da categoria, depois as avaliou e comparou com base em 26 critérios. Vários fornecedores, incluindo a Couchbase, se destacaram do grupo em termos de recursos e estratégia de banco de dados, destacando diferenças significativas entre as ofertas de fornecedores de NoSQL.

Isso é certamente consistente com Motores DB onde o Couchbase é atualmente o #3 em armazenamento de documentos, atrás do MongoDB e, de forma surpreendente, do Amazon DynamoDB, uma vez que eles são principalmente um armazenamento de valores-chave (o DocumentDB é o armazenamento de documentos). No entanto, ao contrário da Forrester, que passa por um processo rigoroso para avaliar 26 critérios de compra relevantes no momento, o envolvimento do fornecedor com a DB-Engines é amplamente inconsistente e fornece apenas uma medida de popularidade (ou seja, pesquisa e tendências). Mas o que não pode passar despercebido na metodologia DB-Engines e em suas percepções coletadas sobre o mercado de bancos de dados é o rápido aumento da popularidade do CosmosDB do Microsoft Azure e, em menor escala, do DynamoDB, em comparação com os pilares do NoSQL, como o Couchbase ou o MongoDB. O que está acontecendo claramente é um crescente interesse e adoção da nuvem.

Migração para a nuvem, sem dependência de fornecedor

Atualmente, a maioria das empresas está buscando uma estratégia híbrida ou de várias nuvens para executar cargas de trabalho no melhor ambiente de execução ou para atender aos requisitos de segurança, governança e conformidade em todo o mundo. As ofertas de banco de dados como serviço dos provedores de nuvem, como o DynamoDB e o CosmosDB, são limitadas a uma única nuvem e não atendem a esses requisitos dos clientes, forçando-os a ficar presos a seus provedores de nuvem.

A estratégia de nuvem do Couchbase, por outro lado, é sobre a flexibilidade de implantação e escolha, ao mesmo tempo em que oferece aos clientes total controle e propriedade de seus dados. O Couchbase foi criado usando uma arquitetura nativa da nuvem como um banco de dados distribuído de escalonamento horizontal que pode ser implantado em qualquer lugar em uma infraestrutura física, virtual ou em contêineres. As ofertas de nuvem do Couchbase aproveitam essas vantagens arquitetônicas para se concentrar em permitir que os clientes atendam aos seus requisitos híbridos e de várias nuvens com uma plataforma de dados consistente que pode ser implantada em implantações no local, na borda e na nuvem.

Os clientes podem optar por implantar o Couchbase de três maneiras diferentes - como uma oferta "faça você mesmo" no local ou na nuvem, como um serviço autogerenciado como parte de sua infraestrutura Kubernetes nas nuvens privadas ou na nuvem, aproveitando o Couchbase Autonomous Operator, ou como um serviço totalmente gerenciado em plataformas de nuvem. As ofertas de nuvem do Couchbase são sempre implantadas na conta de nuvem do cliente, garantindo que ele tenha controle total sobre a segurança e a propriedade dos dados.

A troca crítica: dependência do fornecedor versus a melhor funcionalidade do banco de dados

Provedor de nuvem DBaaS As ofertas são certamente uma opção conveniente para obter um rápido gerenciamento de dados para aplicativos baseados em nuvem pública, mas tenha em mente todas as limitações que você acabará enfrentando ao dimensionar suas implementações. Enquanto isso, os custos dispararão rapidamente à medida que você aumentar a capacidade. Rick Houlihan, no entanto, oferece uma perspectiva contrária em relação aos custos em seu LinkedIn artigo. Ele minimiza as muitas diferenças funcionais entre as ofertas de NoSQL (em contraste com a avaliação rigorosa da Forrester dos critérios técnicos reais de compra), e sua tese afirma que tudo se resume simplesmente ao custo. As bases de clientes do Couchbase e do MongoDB sugerem que esse não é necessariamente o caso, com recursos de classe empresarial diferenciados e, no caso do Couchbase, os melhores da categoria, impulsionando a adoção generalizada do NoSQL atualmente.

É fundamental selecionar o banco de dados que crescerá com o seu aplicativo, principalmente porque o desempenho máximo do aplicativo será limitado pelo desempenho subjacente do banco de dados. Os clientes não estão mais aceitando a ideia de que precisam simplesmente comprar mais hardware para resolver problemas relacionados ao desempenho do aplicativo e à eficiência operacional. Como resultado, muitos clientes já rearquitetaram seus aplicativos para aproveitar o NoSQL, mas evitar as características do sistema relacional, como esquema normalizado e ACID, não é uma opção.

Como o escopo e os requisitos do aplicativo mudam e evoluem com o tempo, é fundamental ter uma plataforma que ofereça suporte ao desenvolvimento ágil. De fato, presumir que o NoSQL é mais adequado apenas para consultas simples que facilitam a conservação da CPU, de modo que o desempenho seja impulsionado pela modelagem adequada de dados desnormalizados, talvez seja apenas uma perspectiva adotada por aqueles que estão limitados por seu banco de dados NoSQL que não oferece suporte a consultas e análises ricas e complexas. Uma base em padrões abertos, o SQL for JSON, permite que os clientes migrem de forma rápida e fácil do relacional para o NoSQL, entendendo que forçar a desnormalização do banco de dados para se adequar ao NoSQL é contraintuitivo. Em vez disso, o Couchbase permite um esquema NoSQL otimizado, incentivando os clientes a reprojetar o modelo de dados para refletir o padrão de acesso do aplicativo, e usa o Join onde ainda é imperativo evitar a redundância e manter a integridade dos dados.

O suporte do Couchbase N1QL para junções ANSI é uma solução realmente elegante em uma plataforma NoSQL de ponta que foi projetada para desempenho em escala, ajudando os clientes a ocupar menos servidores nos andares do data center (por exemplo, a Rakuten Viber migrou do MongoDB para o Couchbase e reduziu pela metade o número de servidores AWS). Embora alguns produtos NoSQL ofereçam recursos que parecem semelhantes, sua implementação e limitações inerentes tornam-se óbvias quando você tenta usá-los de fato. Por exemplo, a estrutura de agregação do MongoDB exige que os documentos residam no mesmo fragmento para oferecer suporte a uniões com pesquisas em documentos, o que afeta gravemente a flexibilidade e o desempenho do banco de dados.

Conclusão

Enquanto a nuvem pública DBaaS Embora as ofertas do DynamoDB possam parecer muito simples e fáceis de usar, nenhuma delas fornece adequadamente a amplitude de recursos prontos para uso. Por exemplo, cabe ao cliente provisionar clusters do DynamoDB Accelerator (DAX) ou usar o ElastiCache para reduzir a latência, vincular o DynamoDB ao RedShift para análise ou vinculá-lo ao Lambda para gerenciar o pico de throughput, tudo isso sem uma visualização/API consolidada.

Realisticamente, uma solução, especialmente documento ou valor-chave, não serve para todos. No espaço NoSQL, há espaço para várias soluções e plataformas que oferecem suporte à escolha, como o Couchbase. Desempenho, confiabilidade e escalabilidade são os princípios fundamentais por trás do NoSQL e onde o Couchbase se destaca, ao mesmo tempo em que torna o acesso a dados de documentos JSON e KV rápido e simples. O mais importante é que os líderes de tecnologia, os arquitetos e os desenvolvedores de aplicativos desejam ferramentas conhecidas, como SQL, para que não precisem se dedicar à equipe ou aprender paradigmas totalmente novos ou APIs proprietárias para acesso aos dados.

Em última análise, você deseja desempenho com maior flexibilidade para o desenvolvedor e facilidade de uso, tudo isso sem dependência do fornecedor. Infelizmente, a AWS atende apenas a alguns desses requisitos, e os clientes continuarão a escolher várias soluções para seus aplicativos.  O Couchbase é usado rotineiramente para camadas de cache, fontes de verdade e sistemas de registro em casos de uso de alta escala e alta flexibilidade, incluindo aplicativos móveis off-line. Ele foi selecionado para alimentar os aplicativos mais críticos para os negócios das empresas e foi implantado com sucesso em ambientes físicos, virtualizados, de contêineres e de nuvem pública (aproximadamente 30% de implantações em nuvens públicas, como AWS). Por padrão, o Couchbase é acessado e gerenciado por meio de um conjunto consistente de APIs e dimensionado, atualizado e diagnosticado como uma única unidade, o que faz do Couchbase uma plataforma de banco de dados completa que não apenas atende às necessidades atuais de várias nuvens, mas também oferece a flexibilidade para se adaptar às necessidades futuras.

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

Autor

Postado por Thomas Dong

Thomas Dong é vice-presidente de marketing de produtos e soluções da Couchbase. Thomas é um cientista de dados e inovador de marketing com mais de 20 anos de liderança de produtos como tecnólogo e estrategista.

Um comentário

  1. Fantástico e muito informativo! Certamente o usarei para discussões competitivas sobre DynamoDB, CosmosDB e outros.

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.