Apache CouchDB 1.2.0 新特性

  • 2012-04-27
  • 本文字数:628 字

    阅读完需:约 2 分钟

Apache CouchDB 1.2.0 正式发布,该版本涉及诸多方面的改进,如性能、安全、系统构建、存储等。CouchDB 是用 Erlang 开发的非关系型数据库,它支持物理上线性扩展,并提供 REST API 给用户使用。该版本主要的改进如下:

性能

  • 新增原生 JSON 解析器——解析器的核心逻辑完全由 C 语言实现,这大大提升了系统的响应时间
  • 数据库和视图索引文件的压缩功能——压缩功能由 Google Snappy 实现,并提升了系统的可伸缩性
  • 改进了数据库写以及视图索引功能——利用了 Erlang 运行时系统的优势
  • 提升了内置 feed 过滤器的性能

安全 (值得注意的一点是,该版本安全性的改进牺牲了一些向前兼容性)

  • _users 数据库文档对象的访问权限不再开放给所有用户
  • _replication 数据库中敏感信息的访问权限不再开放给所有用户
  • 密码的哈希串由数据库生成,不再依赖客户端
  • 以 Cookie 的方式实现持久化用户登录状态
  • OAuth secrets 可以存储在用户系统数据库中
  • Erlang 库升级到最新版本

系统构建

  • 构建 CouchDB 不再需要 cURL——这将使得在特定平台上构建 CouchDB 变得简单

CouchDB 在 HTTP API、数据存储、数据库复制等方面也做了改进,详细内容可以参照发布说明
从服务厂商的反应来看, Iris Couch (Couch DB 的免费云服务提供商),对于本次版本的升级,有如下评论

Iris Couch 账号的服务,将享受本次 CouchDB 升级的功能,整个升级是平滑的。本次 CouchDB 升级最显著的特征是

  • 用户登录状态持久化
  • _users 数据库的安全性更强
  • 磁盘利用率更高
  • 数据库复制速度更快

相信 CouchDB 可以更好的促进 NoSQL 生态圈发展。