As concepções errôneas sobre o NoSQL existem há tanto tempo quanto o próprio NoSQL. É sempre bom conhecer perspectivas diferentes, por isso estou dando início a uma nova série de blogs sobre Conceitos errôneos sobre NoSQLespecificamente quando se trata de duas das principais empresas de banco de dados de documentos do mundo: Couchbase e MongoDB.
Vou abordar alguns dos concepções errôneas que o Mongo fez sobre o Couchbase e o NoSQL e alguns dos equívocos e mal-entendidos mais comuns que ouvi no comunidade de desenvolvedores em geral.
NoSQL significa que você não pode escrever SQL
Na verdade, não posso culpar ninguém por esse equívoco. Está bem no nome! E para muitos bancos de dados NoSQL, como o Mongo, isso é absolutamente verdadeiro. No entanto, NoSQL também pode significar "Not Only SQL", e o Couchbase é o primeiro banco de dados de documentos JSON a realmente cumprir essa promessa.
Com o Couchbase, os dados podem ser acessados de várias maneiras:
-
- Pesquisa de valores-chave simples e eficiente
- Consulta SQL++ (anteriormente denominada "N1QL")
- Pesquisa de texto completo
- Análise (também com SQL++)
- Sincronização móvel
O Couchbase é um banco de dados multimodelo: você pode começar com operações de valor-chave simples de entender e avançar para SQL++ ou Full-Text Search quando precisar desses serviços. É tudo o mesmo pool de dados: não há necessidade de adicionar ferramentas ou integrações extras. Com o Couchbase, está tudo na caixa.
O Couchbase não é o único banco de dados NoSQL que explora o SQL: O CosmosDB da Microsoft e o PartiQL da Amazon também oferecem algum grau de compatibilidade com SQL (embora não tão completo quanto o SQL++ do Couchbase). Mas a adoção do SQL++ como padrão torna a transição dos bancos de dados legados/relacionais mais natural.
Eu também recomendaria um recurso para pesquisas adicionais: SQL++ para usuários de SQLum livro de um dos inventores do SQL, Don Chamberlain (também disponível para download gratuitocortesia do Couchbase).
O NoSQL tem uma curva de aprendizado acentuada
Com todas essas maneiras de interagir com os dados, deve ser complicado. O Mongo chama a atenção especificamente para o Couchbase: "esse crescimento da funcionalidade tem um custo: uma explosão de complexidade para os desenvolvedores“.
No entanto, não é necessário usar todas essas ferramentas imediatamente. Você pode começar com uma consulta SQL familiar ou uma API de valor-chave simples de usar. Posteriormente, quando seu caso de uso exigir, você poderá avançar para SQL++ mais complexo para obter flexibilidade, API de subdocumento para obter desempenho ou um índice de pesquisa de texto completo para obter uma pesquisa eficiente.
Quando se trata de problemas com o aprendizado de bancos de dados NoSQL, eles foram praticamente eliminados quando se trata do Couchbase em comparação com outros. O Couchbase tem trabalhado constantemente para tornar a experiência do desenvolvedor mais suave, incluindo:
-
- Playground do Couchbase – uma experiência totalmente gratuita, no navegador, para modificar e executar amostras de código para todos os SDKs (Java, Node.js, Python, .NET, PHP, Ruby, Scala, Go, C++ e Kotlin).
- Couchbase Capella - um banco de dados como serviço (DBaaS) totalmente gerenciado e hospedado para reduzir a sobrecarga e o tempo necessários para executar tarefas administrativas. Basta obter uma string de conexão e começar a programar.
E mencionarei novamente o SQL++ porque o SQL é a linguagem mais popular do mundo para trabalhar com dados. Considere esta comparação lado a lado de uma consulta SQL++ e uma consulta Mongo, que retornam o mesmo resultado:
Além de o exemplo do SQL ser mais conciso e, sem dúvida, mais legível do que a linguagem de consulta proprietária do Mongo, ele também é uma linguagem padrão compreendida por uma grande porcentagem de desenvolvedores e profissionais de software.
O Couchbase tem investido no padrão SQL há anos e, em um mercado de contratação desafiador, o SQL pode ser uma habilidade que torna a curva de aprendizado do NoSQL muito menos íngreme.
Mais recursos
Como esta postagem do blog é sobre o Couchbase.com, é claro que sou tendencioso. Portanto, não deixe de fazer uma pesquisa mais aprofundada.
Aqui estão alguns recursos que podem ajudá-lo:
-
- Uma apresentação de Steve Yen, um dos fundadores do Couchbase: Por que o Couchbase?
- Mais detalhes sobre o SQL++ de Lior King, um engenheiro de longa data da Couchbase: Escalando o pico das consultas
- Por favor visite o Couchbase Playgrounde experimente o Couchbase com o idioma de sua preferência.
- Faça o download do livro de Don Chamberlin, SQL++ para usuários de SQL
- Inscreva-se em um Teste gratuito do Couchbase Capella. Não é necessário cartão de crédito. E diga-me o que achou da curva de aprendizado: estamos atentos e queremos melhorar continuamente a experiência para você.
O que vem a seguir?
Na próxima postagem, abordarei mais conceitos errôneos: o Couchbase é "apenas" um armazenamento de valores-chave? O Couchbase não tem uma funcionalidade crítica de pesquisa de texto? E como o Couchbase se compara nessas áreas a outros bancos de dados NoSQL líderes, como o Mongo?
Deseja discutir mais sobre o assunto? Você está convidado a participar do Discórdia do Couchbase para mais conversas, perguntas e respostas com a equipe e a comunidade do Couchbase.