As concepções errôneas sobre o NoSQL existem há tanto tempo quanto o próprio NoSQL. É sempre bom conhecer perspectivas diferentes e, por isso, estou dando continuidade a esta série do blog sobre concepções errôneas sobre NoSQL, especificamente quando se trata de duas das principais empresas de banco de dados de documentos do mundo: Couchbase e MongoDB.
Continuarei abordando alguns dos concepções errôneas que o MongoDB fez sobre o Couchbase e o NoSQLbem como alguns dos equívocos e mal-entendidos mais comuns que ouvi na comunidade de desenvolvedores sobre o NoSQL em geral.
O Couchbase NoSQL é "apenas" um armazenamento de chave-valor
É verdade que o núcleo do Couchbase é um mecanismo de chave-valor muito eficiente e que prioriza a memória. Esse tem sido o caso desde o primeiro dia. Mas o Couchbase foi desenvolvido com base nesse mecanismo central e se tornou um dos primeiros bancos de dados NoSQL "multimodelo".
O que significa multimodelo?
Multimodelo significa que o Couchbase oferece várias maneiras de interagir com um único pool de dados:
-
- Valor-chaveDados de leitura/gravação por meio de uma pesquisa de "chave". Extremamente rápido, especialmente com uma arquitetura que prioriza a memória, e excelente para simplicidade.
- SQL++: a linguagem mais popular do mundo para consulta de dados, oferecendo flexibilidade e um padrão do setor.
- Pesquisa de texto completoFTS: também conhecido como "FTS", fornece um "mecanismo de pesquisa" de texto para dados, bem como pesquisas baseadas em geografia.
- AnálisesConsulta de dados com consultas complexas e adhoc em SQL++, com isolamento da carga de trabalho.
- Eventos: Funções JavaScript que podem responder a eventos de alteração de dados.
- Celular: Sincronização automática e off-line de dados para dispositivos móveis, dispositivos de borda e até mesmo software de desktop.
Portanto, é altamente impreciso dizer que o Couchbase é apenas para casos de uso de valor-chave.
O Couchbase não tem a pesquisa Lucene
Esse é um ponto de comparação bizarro que O MongoDB chama a atenção especificamente para o Couchbase.
O Couchbase tem um Pesquisa de texto completo incorporada alimentado pela popular biblioteca de código aberto Bleve (escrito em Go). Não é o Lucene, mas ainda assim é uma biblioteca completa capaz de fazer stemming, reconhecimento de idioma e pontuação de relevância, pesquisa geoespacial, imprecisão, etc.
O Bleve é incorporado diretamente ao Couchbase e não requer conectores ou integrações adicionais: basta criar um índice e começar a pesquisar. O vídeo a seguir mostra como essa solução pode ser simples e poderosa.
O fato de o MongoDB chamar a atenção para isso é semelhante a dizer que os carros da Ford não usam motores da Honda: é literalmente verdade, mas irrelevante (isenção de responsabilidade: não sei nada sobre motores de carros).
Mas se você estiver realmente investido no Lucene ou preferir usar o ElasticSearch, não tem problema! O Couchbase tem um Conector Elasticsearch disponível.
O que vem a seguir?
Na próxima postagem, abordarei mais conceitos errôneos: ainda é verdade que o NoSQL não é seguro? Que ele também perde dados e não oferece suporte a ACID? Como o Couchbase se sai com relação à segurança e à possível perda de dados?
Quer discutir mais? Você é bem-vindo a participar do Discórdia do Couchbase para mais conversas, perguntas e respostas com a equipe e a comunidade do Couchbase.