BT

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.

Avalie esse artigo

Relevância
Estilo/Redação

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
Feedback geral
Bugs
Publicidade
Editorial
Marketing
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2016 C4Media Inc.
Política de privacidade
BT

We notice you’re using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.