写点什么

Couchbase 发布 Couchbase Server 2.0 GA

  • 2013-01-19
  • 本文字数:1554 字

    阅读完需:约 5 分钟

Couchbase Server 2.0 的主要特性包括灵活的 JSON 数据模型,分布式的索引和查询,增量的 map-reduce 以及跨数据中心的复制。

在 2011 年 7 月发布开发者预览版之后,又经过了漫长的孵化, Couchbase 发布了 Couchbase Server 2.0 的正式版本。它是一个 NoSQL 解决方案,结合了内存缓存的键 - 值存储功能和面向文档数据库的功能。

Couchbase Server(CS)使用了基于 JSON 的数据模型和可选的数据库模式,最终提供了一致性的视图,而这些视图是一些键 - 值表,用户能够通过它们迭代、选择或查询存储在文档内的信息。视图通过增量 map-reduce 操作生成,开发者能够通过它们为应用提供简单的实时分析。视图查询会被分配到集群中单独的节点上,来自每个节点的结果会在响应返回之前进行合并和校验。

Couchbase Server 2.0 引入了跨数据中心复制(XDCR),允许数据库管理员在集群和数据桶(data bucket)之间复制数据。该功能提供了一种灾难恢复的途径,同时也对广泛分布的应用进行了局部改善。

CS 在内存中执行数据改变,稍后会使用 SQLite 将所有文档提交到磁盘进行持久化。这里有一个改进,只追加持久化引擎(append-only persistence engine)会将所有的更新添加到文件末尾,从而避免数据损坏并加快写入速度。

Couchbase 为 Linux(Ubuntu、Red Hat)、Windows 和 Max OS X 提供了 32 位和 64 位的社区版和企业版。社区版是免费的,面向狂热者,并不推荐在生产环境中使用,因为根据版本规范,“解决并验证QA 循环是企业版发布流程的一部分,而社区版并没有经过迭代测试,因此它不会包含最新的EE 特定的bug 修复”。

Couchbase 还为 Java、.NET、PHP、Ruby、C 和 Python 提供了 SDK ,同时还为 Node.js 和 Go 提供了实验性的客户端库。社区则为 Clojure、Erlang、Node.js、Perl、Python 和 TCL 开发创建了很多其他的客户端库

Couchbase Server 是由 Apache CouchDB 和 Membase 这两种技术合并而成。但是,虽然 CS 继承了 CouchDB 的大部分功能,该项目使用了一个不同的路径:在 GitHub 上创建了自己的开源项目。在一次 InfoQ 的采访中,Couchbase 解释说:

在团队开始集成 Apache CouchDB 和 Membase 构建 Couchbase 时,他们最初以 Membase 作为基础技术。Apache CouchDB 的部分代码被用于替换 Membase 存储后端,同时为 Couchbase Server 中的索引和查询提供基础。但是,为了满足分布式数据库情况下性能和资源利用的需要,大量内容被重写。例如,使用 C 语言优化并重新实现了整个文件存储路径,同时只保留了 Couchbase 前端所需要的功能。这样做的结果便是,虽然 Couchbase 深受 Apache CouchDB 技术的影响,但是它却独具特色。索引和查询方面的许多内容都与 Apache CouchDB 向上兼容,而文档获取和管理 API 则与 Membase 向上兼容。当然,Couchbase 是 100% 开源的(Apache 2.0 协议),因此任何想要使用它的人都可以自由地获取它的所有代码。

CS 和 CouchDB 在文档相关的功能上的主要区别是:

Couchbase Server 使用一个基于 memcached API 的文档操作 API(上面提到的),因此它提供了一个不同的操作集(例如,原子递增和递减、没有公开文档修正等)。

索引语义发生了变化。与 Apache CouchDB 不同的是,Couchbase Server 默认有一个最终的索引模型,当数据到达存储层时会在此进行异步地索引,在客户端则能够为每个操作选择不同的语义。

尽管我们有少数雇员对 Apache CouchDB 的态度很积极,但是它的创建者 Damien Katz 的焦点则是 Couchbase,因此 Couchbase 很可能会与原始的项目越来越远。

查看英文原文 Couchbase Releases Couchbase Server 2.0 GA


感谢杨赛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-01-19 08:222086
用户头像

发布了 321 篇内容, 共 124.6 次阅读, 收获喜欢 19 次。

关注

评论

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

微服务架构的重要性:现代应用开发的关键趋势

2756

微服务架构 微服务、

来了,kubesphere轻松搭建redis

夜栩

后端 docker image KubeSphere

在找稳定的企业级数据云平台?奇点云DataSimbaR4.9 LTS发布

极客天地

微服务之道:8个原则,打造高效的微服务体系

不在线第一只蜗牛

微服务 微服务架构

迄今为止最完整的DDD实践

阿里技术

架构 DDD

全面解析 | 大模型时代如何利用弹性计算服务应对大算力挑战

阿里云弹性计算

云计算 弹性计算 AIGC

基木鱼平台全链路升维,商家经营迎来AIGC生意经

极客天地

人脸识别技术在智能家居中的应用

数据堂

TICDC 数据同步至 MySQL初体验

TiDB 社区干货传送门

迁移

慧博云通加入飞桨技术伙伴计划,共同推动企业 AI 应用创新

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

【TiDB v7.1.0】资源管控调研及评测

TiDB 社区干货传送门

7.x 实践

TiDB 升级利器(参数对比)——TiDBA

TiDB 社区干货传送门

7.x 实践

毕业季 | 程序员初入职场必备软件开发神器

华为云开发者联盟

云计算 软件开发 华为云 华为云开发者联盟 企业号 6 月 PK 榜

OpenResty 安装

流火

记一次Native memory leak排查过程 | 京东云技术团队

京东科技开发者

native 企业号 6 月 PK 榜 memory leak

发送Tidb告警信息到企业微信群实践

TiDB 社区干货传送门

监控

TiDB 多租户方案和原理

TiDB 社区干货传送门

TiDB 底层架构 新版本/特性解读 7.x 实践

资源池化:多租户与数据库整合解决方案

TiDB 社区干货传送门

新版本/特性解读 数据库架构设计

无类教育完善内训体系,开启校企合作新篇章

极客天地

如何用smardaten90天快速开发并上线智慧空间loT物联平台?

热爱编程的小白白

带你了解爆火的AI框架-LangChain

派大星

券商网络信息安全启动三年计划圈重点

原点安全

探索To-D,落地好大夫效能平台

方勇(gopher)

DevOps SRE 效能平台

万木健康:用AIGC创造医生的第25个小时|TE洞察

TE智库

人工智能 AIGC 医疗健康

TIDB v7.1 reource control资源管控特性体验贴

TiDB 社区干货传送门

版本测评 7.x 实践

基于驱动因素的全面预算管理方式

智达方通

智达方通 全面预算管理 业财驱动 驱动因素

干货|三个维度详解 Taier 本地调试原理和实践

袋鼠云数栈

开源 前端

专访|严靖炜:从参与 MatrixOne 到论文入选 IEEE BMSB 2023

MatrixOrigin

数据库 云原生 超融合

Couchbase发布Couchbase Server 2.0 GA_DevOps & 平台工程_Abel Avram_InfoQ精选文章