写点什么

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

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

关注

评论

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

超简单!手把手教你玩转ClaudeCode,无魔法不会员!

王磊

5 个最佳 ServiceNow 开源替代品(含价格对比)

NocoBase

开源 低代码 零代码 ITSM ServiceNow

震坤行商品列表API秘籍!轻松获取商品列表数据

tbapi

震坤行API 震坤行商品详情API 震坤行商品数据采集

解析 vLLM 架构及源码系列:模型执行过程

Jason黄

vLLM源码

揭秘 TikTok 达人营销高效履约之道

Wolink

海外推广 沃链Wolink 达人营销

AI 超聚合系统,一站式 AI 功能解决方案

微擎应用市场

AI‘’

AI赋能驱动下的容器化应用开发范式升级

xuyinyin

YashanDB数据库多版本控制与数据一致性保障

数据库砖家

得物灵犀搜索推荐词分发平台演进3.0

得物技术

架构 AI 算法

元图CAD:破解离散文字提取难题,释放工程设计效率新潜能

元图CAD

OCR 元图cad 提取文字 离散文字

真正的产品迭代,源于更好的理解用户需求

Feedalyze

产品运营 产品迭代 用户反馈 用户需求 企业发展

EMNLP 2025|vivo 等提出 DiMo-GUI:模态分治+动态聚焦,GUI 智能体推理时扩展的新范式

vivo互联网技术

人工智能 推理模型 多模态大语言模型 GUI Agent Test-time Scaling

好用的思维导图网页版有哪些?这8个导图软件榜上有名!

职场工具箱

AI 思维导图 办公软件 思维导图软件 AI生成思维导图

中国通信工业协会城乡建设数字化专业委员会一行到访融云

融云 RongCloud

YashanDB数据库调优实战:提升系统性能的关键技巧

数据库砖家

轻匠招生系统:微擎云端助力教育招生全流程高效化

微擎应用市场

IT故障响应慢?ManageEngine卓豪助您3步实现问题管理!

ServiceDesk_Plus

ManageEngine卓豪

YashanDB数据库多节点负载均衡配置详解

数据库砖家

新华三 Polaris X20000 登顶 MLPerf Storage v2.0,ScaleFlux 助力实现高性能表现

ScaleFlux

抖音家政小程序融合版:助力家政服务高效接入多平台

微擎应用市场

小程序 抖音

获高瓴光速数千万美元投资,质变科技发布首款类人决策智能体Bloom

AI数据云Relyt

数据智能 智能体 AI Agent 决策智能 Agentic AI

腾讯内部测试管理工具揭秘:让用例"活"起来

优测云服务平台

测试管理工具

实时平台Flink热更新技术——实现不停机升级!

袋鼠云数栈

flink sql

YashanDB数据库多副本同步技术详解

数据库砖家

AI+仿真:驱动工业智能变革新引擎(内含100个AI应用案例下载)

Altair RapidMiner

人工智能 AI 仿真 CAE hyperworks

RAGFlow+TextIn:RAG 实战教程!1 分钟实现解析性能提升

合合技术团队

人工智能 大数据 算法

融云十周年程序员纪录片《十字路口》:三十而立,35+ 而已

融云 RongCloud

荣耀远航计划丨2025上半年激励成果一览

荣耀开发者服务平台

荣耀开发者服务平台 荣耀HONOR 荣耀远航计划

YashanDB数据库多版本控制及数据一致性保障

数据库砖家

YashanDB数据库多副本同步与容错策略

数据库砖家

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