BT
x A sua opinião é importante! Por favor preencha a pesquisa do InfoQ sobre os seus hábitos de leitura!

PouchDB: um banco web offline inspirado no CouchDB

por Abel Avram , traduzido por Fernando Lozano em 14 Jun 2012 |

Inspirado no Apache CouchDB, o PouchDB (Portable CloudDB) é um banco de dados com baixas demandas de memória e processamento, criado para aplicações web, principalmente aplicações móveis, que necessitam de uma solução de armazenamento baseada no navegador e que possa ser usada offline. Os dados podem ser sincronizados com bancos de dados CouchDB ou outros bancos PouchDB quando o dispositivo estiver online.

O PouchDB é na verdade uma biblioteca JavaScript, com 131KB na sua forma minimizada e comprimida. Em sua versão atual, o banco pode realizar as seguintes tarefas: criar, consultar, replicar e remover um banco de dados; criar, recuperar, atualizar e remover documentos; consultar informações sobre o banco de dados (metadados) e monitorar e reagir a eventos de alterações no banco de dados.

O banco também fornece um adaptador HTTP RESTful para sincronizar seu conteúdo com outros bancos de dados CouchDB ou PouchDB.

O PouchDB utiliza a API IndexedDB do HTML5, para acessar o mecanismo de armazenamento oferecido pelo navegador, por exemplo o SQLite no Firefox ou LevelDB no Chrome.

Quando questionado sobre possíveis cenários onde o PouchDB seria útil, Dave Harvey, hoje o principal desenvolvedor do projeto, comenta:

[Os cenários principais de uso são] em qualquer aplicação web, móvel ou não, que necessite trabalhar offline (e eu acredito que a maioria delas deveria). Acho que qualquer aplicação que possa funcionar offline ou na nuvem terá que lidar com a questão de sincronizar dados de modo confiável, e seria uma potencial usuária do PouchDB. Os exemplos óbvios são aplicações do tipo lista de tarefas e cadastros.

Comparando o PouchDB com uma instalação offline do CouchDB, Harvey acrescenta:

O CouchDB funciona muito bem no servidor, entretanto não pode ser utilizado com uma aplicação web offiline. Já o PouchDB é um CouchDB minúsculo e embutível, que pode funcionar dentro do navegador, além de conversar com o CouchDB (muito mais poderoso) quando estiver online.

O PouchDB está em alfa e foi testado com Firefox 12+ e Chrome 19+. Espera-se que funcione também com outros navegadores que suportem a API IndexedDB. O código está disponível no Github sob licença Apache 2.0.

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

PouchBD by carlos silva

Realmente esta solução é muito interessante. Com vários sistemas migrando para o ambiente web (ERP's por exemplo) esta solução é realmente muito interessante. Algumas empresas para manter o sistema sempre on-line chegam a utilizar redundância na conexão com a Internet, com empresas diferentes etc. A possibilidade de ter uma aplicação web funcionando 100% offline resolveria um calcanhar de aquiles e com certeza é um excelente argumento para gestores que estão com dúvidas em migrar para uma plataforma web.

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

1 Dê sua opinião

Conteúdo educacional

Feedback geral
Bugs
Publicidade
Editorial
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2014 C4Media Inc.
Política de privacidade
BT