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:134658
用户头像

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

关注

评论

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

C语言_字符串与指针的练习

DS小龙哥

5月月更

下个十年高性能 JSON 库来了:fastjson2!

王磊

Java

解构HE2E中的Kubernetes技术应用

华为云开发者联盟

Docker Kubernetes DevOps HE2E CCE部署

druid源码学习二-对锁的理解

Nick

java 并发 lock锁

网站开发进阶(五十五)CSS padding、margin 属性

No Silver Bullet

5月月更 padding magin

教你用 ECharts 轻松做一个Flappy Bird小游戏

华为云开发者联盟

图表 eCharts 图表库 Flappy Bird 小游戏

李东山——如何让OpenHarmony支持低功耗蓝牙芯片GR551x

OpenHarmony开发者

OpenHarmony 低功耗蓝牙芯片

网站开发进阶(五十玖)css实现背景透明,文字不透明

No Silver Bullet

CSS 5月月更

C语言-strlen和sizeof强化习题练习- I

芒果酱

c++ C语言 5月月更

“可严可仁”的考勤系统,让数字化不漏掉人性化

明道云

为什么前端不能没有监控系统?

杨成功

大前端 构架 5月月更

企业实践|分布式系统可观测性之应用业务指标监控

阿里巴巴云原生

阿里云 云原生 可观测

goscript: 遇见yaegi所带出的思路

humboldt

Go goscript

程序员转型产品经理:懂技术或许是把双刃剑!

博文视点Broadview

WorkPlus统一门户:企业信息互通,实现业务协作

BeeWorks

智能运维应用之道,告别企业数字化转型危机

云智慧AIOps社区

大数据 监控 数字化转型 智能运维 自动化运维

快慢缓急总相宜|ONES 人物

万事ONES

PingCAP 宣布 TiDB Cloud 正式商用,助力全球企业在云上构建新一代云原生应用

极客天地

如何使用 Authing 单点登录,集成 Discourse 论坛?

Authing

低代码 单点登录 Idaas 应用集成方案 Discourse

作业帮在线业务 Kubernetes Serverless 虚拟节点大规模应用实践

阿里巴巴云原生

阿里云 云原生 客户案例 作业帮 Kubernetes Serverless

队列同步器AQS

急需上岸的小谢

5月月更

WordPress 主题和插件

海拥(haiyong.site)

WordPress 5月月更

浅述容器和容器镜像的区别

汪子熙

Docker 容器 容器镜像 虚拟化技术 5月月更

SaaS到底是什么?如何做?

小炮

SaaS

Java遇上SPL:架构优势和开发效率,一个不放过

华为云开发者联盟

Java stream 应用架构 SPL 结构化数据处理

编码压缩介绍

Loken

音视频 5月月更

金钱无法给你安全感,能力才行,你同意吗?

叶小鍵

uni-app技术分享| uni-app转小程序-实时消息

anyRTC开发者

小程序 uni-app 音视频 实时消息 呼叫邀请

ansible 模块:become

ghostwritten

ansible

Docker下的OpenResty三部曲之一:极速体验

程序员欣宸

Docker 5月月更 openrestry

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