Impressões sobre CouchDB

Fazia tempo que uma determinada tecnologia não me deixava tão empolgado quanto CouchDB. Já estava na minha ToDo list a bastante tempo, mas sempre passava alguma outra coisa na frente e assim fui adiando o momento de colocar a mão na massa e conhecer melhor este banco de dados não relacional, também conhecido como NoSQL.

Encontrei o Fernando Ike na I Conferência W3C que aconteceu aqui em São Paulo, entre as nossas conversas, um dos assuntos foi banco de dados onde o Fike me perguntou se eu já tinha testado o CouchDB nos meus projetos web. O assunto rendeu bastante e alterei minha ToDo list, passando o CouchDB como próximo assunto a ser estudado.

Não precisei de muito tempo para gostar do CouchDB e ficar com uma boa expectativa para realizar testes e aplicar em alguns projetos da Trianguli. O banco de dados é orientado a documentos, diferente dos mais conhecidos, como MySQL, Postgres, etc, que são bancos de dados relacionais. O CouchDB não possui tabelas, cada banco de dados possui um conjunto de documentos no formato JSON e o aplicativo fornece uma maneira bastante eficiente de fazer consultas via Http utilizando um modelo REST. Parece bastante estranho, mas pode ser muito prático para web, principalmente se utiliza Ajax onde a consulta pode ser feita diretamente no banco, sem passar por uma aplicação.

Navegando um pouco encontrei o post 10 Must-Know Topics For Software Architects In 2009, onde o CouchDB é citado como tecnologia promissora e que não deve ser negligenciada. Tem muita gente apostando nesta tecnologia, inclusive eu, que tenho passado por alguns apertos em projetos web que dependem de bancos relacionais e exigem uma manutenção constante em busca de performance, otimização de queries e demais problemas que eventualmente acontecem.

As consultas em um banco CouchDB são realizadas através de views, o retorno é sempre em formato JSON, mas possui diversas bibliotecas para trabalhar com sua linguagem de programação favorita. Em poucos minutos trabalhando com o CouchDB utilizando a sua biblioteca python-couchdb, montei um sistema de inclusão e consultas sem muita dificuldade.

Ainda não avaliei sua performance, mas tenho projetos com um grande volume de informações e vou tentar converter a base para CouchDB e realizar consultas, simulando as mesmas operações que são feitas no MySQL. Não tem muita documentação a respeito, mas consegui informações através de muitas consultas no Google. Em todos os casos, fiquei bastante animado com essa tecnologia e acredito que tenha um grande potencial em aplicações web.

E como aparece no logotipo do CouchDB: relax! :-)

Gostou deste post? Assine gratuitamente o conteúdo e receba as atualizações por e-mail.

E-mail:

Tags:



View Comments ao post “Impressões sobre CouchDB”

  1. Fábio Morbec says:

    Safari MacIntosh

    Interessante! Já tinha ouvido falar sobre o CouchDB mas bem superficial, achei interessante seu post e vou dar uma pesquisada por aí. Seria interessante se você colocasse os links mais interessantes …

    • Firefox 3.5.5GTB6 Ubuntu

      Oi Fábio,

      Estou com uma ótima expectativa quanto ao CouchDB. Assim que finalizar mais alguns testes, vou publicar mais informações a respeito.

      Abraços!

  2. tiagoprn says:

    Firefox 3.0.7 Windows XP

    Estou traduzindo uma série de tutoriais sobre o CouchDB de um blog chamado “Till’s Blog”, exatamente sobre o uso do CouchDB em PHP como alternativa sobre o MySQL. Esta semana estarei postando a tradução em meu blog, e tomei a liberdade de linkar este seu post lá para ir introduzindo o assunto. Quando puder dê uma visitada para conferir ou adicione meu RSS em seus feeds. Obrigado!

  3. Safari MacIntosh

    Oi Christiano,

    Essa apresentação mostra várias coisas legais sobre o CouchDB: http://www.youtube.com/watch?v=ESDBM9-U804. Umas das coisas interessantes é o uso de CouchApps (http://benoitc.github.com/couchapp/getting_started.html), aplicações feitas com Javascript, armazenadas como documentos e servidas diretamente a partir do CouchDB.

    Sobre documentação em geral, tem esse livro: http://books.couchdb.org/relax/.

    Abraço,
    Dirceu

  4. Safari MacIntosh

    CouchDB está na minha lista ToLearn a um tempo. Só li superficialmente mas pretendo usar no meu próximo projeto.

    Porém estou na dúvida entre o CouchDB e o MongoDB. Chegou a testar o segundo? Ainda não pesquisei muito sobre comparações, mas o MongoDB também merece atenção.

    Abraço.

  5. Felipe Rodrigues says:

    Firefox 3.5.5 Windows 7

    Eu não tenho propriedade pra falar do assunto, mas o que tenho ouvido falar é que esse modelo não tende a vingar devido a quantidade de bancos de dados relacionais que existem. Além disso, os bancos de dados relacionais suprem as necessidades.

    Então, não sei dizer até que ponto seria válido tentar mudar algo que funciona bem.

  6. tiagoprn says:

    Firefox 3.0.7 Windows XP

    Como comentei acima, aqui está o link para a tradução da primeira parte do tutorial:

    http://tgplima.net84.net/?p=23

    Logo estarei publicando a segunda, que é bem mais prática.

  7. Chromium 4.0.249.43 Linux

    Ótimo post!

    Eu também estou super empolgado com o couchdb. Estou fazendo meus primeiros testes.

    Lista de discussão sobre o couchdb:
    http://groups.google.com/group/couchdb-br-group?hl=en
    Lista sobre MRNN (NoSQL)
    http://groups.google.com/group/MRNN-Brasil?hl=pt-BR

    Abraços

  8. WordPress 2.9.2 XML-RPC

    [...] em Desenvolvimento, python 20/02/2010 | sem respostas Em novembro de 2009 publiquei minhas impressões sobre o CouchDB, já que estou desde então estudando banco de dados NoSQL para aplicações bem específicas. [...]

  9. Cleber Martins says:

    Opera 10.53 Windows XP

    Olá pessoal,

    Estou buscando todo o tipo de informação sobre o CouchDB, pois estou fazendo o projeto final da faculdade justamente sobre este assunto.
    Quanto ao comentário do Felipe vale lembrar que o BDOD não veio para substituir nenhum BD e sim para ser mais uma opção pois na informática tudo “depende” da aplicação.
    No momento estou testando o CouchAPP em python e verifiquei que este já facilita muita coisa, pois preciso desenvolver um BD para armazenar as monografias da faculdade e acho que o CouchDB é ideal. Mas estou engatinhando.
    Christiano você tem alguma sugestão?

    Abraços
    Cleber

  10. Suissa says:

    Chrome 5.0.375.86 Windows XP

    CouchDB tb é mto bom, criei um tutorial sobre ele no nosqlbr .
    Porém ainda sou mais o MongoDB ;D

Deixe um comentário

blog comments powered by Disqus
Get Adobe Flash playerPlugin by wpburn.com wordpress themes