50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

将 CouchDB 作为个人数据库

  • 2010-06-11
  • 本文字数:894 字

    阅读完需:约 3 分钟

Berlin Buzzwords NoSql 会议上,会议组织者之一、《CouchDB: The Definitive Guide》(O’Reilly 的一本免费图书)的共同作者Jan Lehnardt ( @janl ) 做了一场名为“ Making Software for Humans - CouchDB and The Usable Peer-to-Peer Web ”的演讲。

Jan 热情洋溢地谈论了他对 CouchDB 的重要核心特性的看法:

  • 易于安装
  • 基于文档
  • JSON 是所有编程语言共享的数据类型的公共子集
  • 良好的 HTTP/REST 接口和 API
  • 干净简洁的两层应用程序(浏览器端的 HTML+JavaScript,CouchDB+JavaScript 作为服务端)
  • Couch Apps
  • 向上、向下扩展的能力
  • 适用于多种平台 / 设备,包括移动设备(Android、Nokia Maemo/MeeGo 以及 iPhone)
  • 内建同步、冲突处理及复制机制
  • 性能优异
  • 通过 JavaScript 中的 Map/Reduce 生成视图
  • 通过 HTTP-Socket 提供数据库变更通知

Jan 还强调了数据的隐私和归属问题,他谈及了 Facebook 和 Diaspora 项目。一个推荐的解决方案是在本地 CouchDB 实例中保存更多个人数据(至少一份安全拷贝)。“无论如何每台机器都应该运行一个 Web 服务器——这是 Web 最早的想法之一。”如果你的任意一台机器上有这些实例,那么像如下信息:

  • 联系人
  • 约会信息
  • 书签及浏览历史
  • 甚至是电子邮件和 IM 消息

都能以文档的形式存储在数据库中,自动同步(数据库级别)到所有其他你使用的设备的 CouchDB 实例上。实践这一想法意义深远。针对所有此类个人数据都只有一个快速存储引擎和存储格式,这将带来更简洁的、跨越所有应用程序的文档格式。为这些内容编写客户端也会变得更加容易,因为无须考虑存储、搜索和备份数据,接口也十分简洁。创建机器本地(能够扩展到云端的)mash-up 也将更加方便。

在会场休息期间,一些与会者讨论了采用该两层方法的架构解决方案。如果你在浏览器中使用 HTML5 和 JavaScript 作为客户端,它能够运行于所有平台之上。服务器端是 CouchDB+JavaScript(还包括所有在此之前的 HTTP 基础设施),以 REST 的方式提供服务。对于复杂的工作,可以使 用 node.js +JavaScript。因此有可能把所有的业务逻辑放入 JavaScript 库中,在你的架构的任意部分复用它们。

几天后将会免费提供大会的视频。

查看英文原文: CouchDB as the Personal Database

2010-06-11 00:134640
用户头像

发布了 135 篇内容, 共 66.1 次阅读, 收获喜欢 43 次。

关注

评论

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

Go 的 UTF-8 实现

Rayjun

utf-8 Go 语言

封神总结!蚂蚁金服+滴滴+美团+拼多多+腾讯15万字Java面试题

Java架构追梦

Java 阿里巴巴 架构 面试 金三银四

JVM-技术专题-虚拟机知识遗漏盘点

码界西柚

JVM

都在看的18WJava核心成长笔记 让我成功收获字节、阿里、腾讯大厂Offer!

学Java关注我

Java 编程 架构 架构师 程序人生】

比微信文件传输助手更好用的传输工具|Telegram

彭宏豪95

微信 效率 文件传输 4月日更 Telegram

150页的剑指Offer解答PDF,它来了!!!

秦怀杂货店

BUG!从编写 Loader 到窥探大佬 Debug 全过程

HZFEStudio

小程序 webpack 构建工具

安卓rxjava使用,4面字节跳动拿到Offer,面试必问

欢喜学安卓

android 程序员 面试 移动开发

翻译:《实用的Python编程》InstructorNotes

codists

Python

DAPP系统开发运营版,DAPP系统开发案例源码

系统开发咨询1357O98O718

Redis-Cluster集群

Sakura

4月日更

【网络】【操作系统】详解select、poll、epoll

Linux服务器开发

后端 网络编程 Linux服务器开发 网络io eopll

想拿到10k-40k的offer,这些技能必不可少!作为程序员的你了解吗?

Java架构师迁哥

解决方案的设计与积累——课程总结

Deborah

思维训练

Ryan Zheng

ARST-日常打卡3

pjw

2个月从0到1,一年5次迭代,百度“量桨”效率喷涌背后的工作秘诀

脑极体

Vue源码思想在工作中的应用

执鸢者

Vue 大前端

ceph-csi源码分析(2)-组件启动参数分析

良凯尔

Kubernetes 源码分析 Ceph CSI

Web3.0时代需要什么样的企业级协作工具?

猫Buboo

怎么做到的?3个月入职蚂蚁金服(Java岗)从年薪10W到年薪30W

Java架构师迁哥

当时尚撞上区块链,为潮酷创意赋予专属

CECBC

时尚产业

封神总结!12W字“多线程与高并发实战手册”成功助我涨薪19K

比伯

Java 程序员 架构

流量分析中常见的指标简单总结

五分钟学大数据

4月日更

深入理解Spring框架之AOP子框架

邱学喆

aop 动态代理 cglib ProxyConfig AspectJ

四面拿到京东Java岗 30K offer 全过程分享

Java架构师迁哥

iOS 面试策略之语言工具-Swift

iOSer

ios swift 面试

安卓rxjava面试,面试一路绿灯Offer拿到手软,吊打面试官系列!

欢喜学安卓

android 程序员 面试 移动开发

介绍一款能取代 Scrapy 的爬虫框架 - feapder

星安果

Python 爬虫 Scrapy feapder

Redis的常见问题

赖猫

c++ redis Linux 后端

区块链如何推动数字化转型?

CECBC

区块链

将CouchDB作为个人数据库_REST_Michael Hunger_InfoQ精选文章