No post que eu falo que conheci o conceito de NoSQL e fiz uma pequena tradução sobre o CouchDB eu disse que em breve falaria sobre o MongoDb.
Assim como o Couch o Mongo é um banco de dados orientado a documentos, é open source, também tem como propósito a escalabilidade e é desenvolvido em C++.
Os documentos são armazenados com a simplicidade de esquemas de dados JSON-like, mais precisamente BSON (Binary JSON). Assim como o JSON, suporta a incorporação de objetos e arrays dentro de outros objetos e arrays.
As consultas também são bem simples:
db.clientes.find()
em SQL seria
SELECT * FROM clientes
Suporta Map/Reduce, provê algumas funcionalidades para buscas full text e tem muitas outras vantagens.
Com certeza os bancos orientados a documentos mais falados no momento são o MongoDB e o CouchDB. Não arrisco um papilte em dizer qual é melhor, particularmente eu gosto bastante do CouchDB. Notei que o MongoDB está em uma fase de desenvolvimento mais evoluída que o CouchDB, porém acho o Couch um pouco mais simples, até mesmo de instalar.
Como referência aqui no Brasil, temos o pessoal da Improve It utilizando o Couch e o pessoal do time de Cloud Computing da Locaweb utilizando o Mongo.
E você prefere qual? Por que?
3 Comentários
Por: Lucas Renan em 19/12/2009
Tags: Banco de Dados . banco de dados orientados a documentos . bson . c plus plus . CouchDB . json . MongoDB
Um conceito interessante que conheci recentemente é o do NoSQL. Existem alguns banco dados orientados a arquivos que estão sendo comentados com certa frequência pela comunidade. Fiz uma tradução (meio porquinha) sobre o CouchDb, em breve vou escrever sobre ele e talvez também sobre o MongoDB.
O Apache CouchDB é um banco de dados orientado a documentos que pode ser consultado e indexado com MapReduce utilizando Javascript. CouchDb também oferece replicação incremental com detecção de conflitos bi-direcionais e resolução.
CouchDb provê uma API JSON RESTful que pode ser acessada por qualquer ambiente que permita requisições HTTP. Existem inúmeras bibliotecas de terceiros que fazem seu uso mais fácil da linguagem de programação de sua escolha. CouchDB tem um console de administração web que fala diretamente com o banco de dados usando requisições HTTP enviadas do seu navegador.
CouchDB é escrito em Erlang, uma linguagem de programação robusta, funcional ideal para construir sistemas distribuídos concorrentes. Erlang permite design flexível que é facilmente escalável e facilmente extensível.
Instalar o CouchDB no Ubuntu
6 Comentários
Por: Lucas Renan em 29/11/2009
Tags: apache . CouchDB . erlang . json . MongoDB . nosql