写点什么

PouchDB:一款受 CouchDB 启发的离线 Web 数据库

  • 2012-06-14
  • 本文字数:753 字

    阅读完需:约 2 分钟

PouchDB 是受 Apache CouchDB 启发为 Web 设计的一款占用空间少的数据库。它尤其适合于需要基于浏览器的可离线使用的存储方案的移动应用。该数据库可与 CouchDB 同步,也可与在线设备上的其他 PouchDB 同步。

PouchDB 实际是一个 JavaScript 库,压缩格式下大小为 131KB。目前它能做的基础任务有:数据库的创建、查询、复制与删除;文档(集)的创建、获取、更新及删除;查询数据库信息并监听数据库变化。

该数据库还带有一个 HTTP RESTful 适配器用于与其他 CouchDB 或 PouchDB 数据库进行同步。

PouchDB 使用 HTML5 IndexedDB API 访问浏览器的底层存储引擎,如 Firefox 的 SQLite 和 Chrome 的 LevelDB 。对于 Web SQL、本地存储和 node.js 的支持正在进行当中。不幸的是, Web SQL 已经被 W3C 弃用,但 PouchDB 仍将支持它,因为“移动浏览器对 IndexedDB 的支持远远落后于 Web SQL”,PouchDB 的作者 Dale Harvey 说。

当被问及 PouchDB 的价值可在哪些场景中体现时,Harvey 说:

任何需要离线工作的 Web 应用(移动或其他),而且我相信大多数移动应用都需要离线工作。任何离线或“在云中”工作的应用都将面临可靠的数据同步的问题,它们都可能会使用 PouchDB。我能想到的显然的例子有待办工作列表和数据管理类的应用。

Harvey 补充,当将 PouchDB 与离线安装的 CouchDB 相比时:

CouchDB 在服务器上表现很棒,但是,它显然不可能在一个离线的 Web 应用中工作。PouchDB 是一个很小的可嵌入在浏览器中运行的 CouchDB,一旦在线,它又能与功能更为强大的 CouchDB 进行交互。

目前 PouchDB 正处在 alpha 版,已经在 Firefox+12 和 Google 19+ 上通过测试。它几乎能运行在所有实现了 IndexedDB API 的浏览器中。其代码可从GitHub 下载,它采用Apache 2.0 许可。


查看英文原文: PouchDB – a CouchDB-inspired Offline Web Database

2012-06-14 10:125354
用户头像

发布了 184 篇内容, 共 86.6 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

Zookeeper集群搭建

Mike

Week2 Homework

Ray_c

#架构实战营

接口测试要测试什么?

与风逐梦

软件测试 接口测试

有迹可循之CheckList

编号94530

Code Review 架构设计 checklist

【Flutter 专题】60 图解基本 Dialog 对话框小结

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 9月日更

华云大咖说 | 混合IT架构的统一管理——安超云套件产品介绍

华云数据

华云大咖说 | 对象存储在金融行业的应用

华云数据

RTD 比率式温度测量传感器设计思路

不脱发的程序猿

学习 嵌入式 电路设计 硬件开发 ADI

POM 文件中 licenses 许可证的定义

HoneyMoose

【重磅】微信开源PhxSQL:高可用、强一致的MySQL集群

OpenIM

webpack5之HMR原理探究

rayyang00

大前端 webpack

职场奇袭!3分钟完成一天工作

博文视点Broadview

Promise.any() 原理解析及使用指南

devpoint

Promise 9月日更

为了让医院把医护还给患者,他们用了这个….

华为云开发者联盟

数字化转型 医院 华为云 devcloud 全流程一体化

深入了解现代web浏览器(第三部分)

GKNick

去中心化钱包开发,imtoken钱包开发

07. 图灵测试与第一次AI浪潮

Databri_AI

人工智能

在线JSON转MySQL建表语句工具

入门小站

工具

你知道 ES6~ES12等叫法是怎么来的吗?

编程三昧

JavaScript ecmascript 8月日更

智汇华云 | ArSDN之分布式路由及浮动IP简介

华云数据

VSCode配置JAVA开发环境

IT蜗壳-Tango

Java 9月日更

智汇华云 | 混合IT下的云管理套件核心技术解析

华云数据

4种Golang并发操作中常见的死锁情形

华为云开发者联盟

缓存 协程 并发 死锁 Go 语言

C#多线程开发-线程同步02

Andy阿辉

C# 多线程 多线程并发 8月日更

Lua 入门到精通( 02 Lua 基本语法)《做一个脚本高手》

陈皮的JavaLib

lua Linux 运维 8月日更

Apache Pulsar 新增 2 位 PMC 成员:林琳与陈航

Apache Pulsar

腾讯云 Apache Pulsar

接口测试进阶接口脚本使用--apipost(预/后执行脚本)

Proud lion

大前端 后端 Postman 开发工具 接口文档

深入了解 RocketMQ 之ACL

邱学喆

签名 白名单 资源权限校验

Vue进阶(八十七):输入框事件 blur 与 change 的差异

No Silver Bullet

Vue 9月日更

华为云数据库内核专家为您揭秘:GaussDB(for MySQL)并行查询有多快?

华为云开发者联盟

MySQL 关系型数据库 华为云数据库 GaussDB(for MySQL) 并行查询

华为云严选上新啦!高效准确的数据同步方案来了

华为云开发者联盟

数据库 华为云 数据同步 英方软件 严选商城

PouchDB:一款受CouchDB启发的离线Web数据库_移动_Abel Avram_InfoQ精选文章