写点什么

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

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

关注

评论

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

简单实用的鼠标右键助手专业版MouseBoost Pro mac版

Rose

使用 Gateway API 在命名空间之间发送流量

Gingxing

kong API网关 kong-plugin Kong 网关 Kong Gateway

WorkPlus行政单位内部即时通讯软件的最佳解决方案

BeeWorks

path finder for mac 激活码 最好用的文件管理浏览器

Rose

1688API接口推荐:1688店铺所有商品数据接口

tbapi

1688API 1688店铺所有商品接口 1688店铺数据接口

Github每日热榜2024.03.17

天马行空的大杂烩

程序员 最新 开源软件

iot的10种常见协议,特点,组网模式及其使用场景

了了

IoT 技术选型 组网

博客平台选择指南:找到适合程序员的完美舞台

何书悦

程序人生 写作

AI是助力还是取代我们?

Bruce Talk

AI Copilot

玩转数据-Python数据采集的方法-淘宝商品详情接口

技术冰糖葫芦

API 接口

SketchUp Pro2023中文集成破解版【含草图大师2023序列号和验证码】

Rose

如何让 iPhone 无线投屏到 Mac 上呢?airserver mac专业投屏工具

Rose

Waves12破解版安装教程 Mac版全套音频效果处理工具 支持M1/M2

Rose

在 Windows 上利用Qwen大模型搭建一个 ChatGPT 式的问答小助手

Hunter熊

大模型 cuda Qwen Torch

兼容m1 Lightroom Classic 2021 for mac(lr 2021 中文大师版)

Rose

ACCDB MDB Explorer for mac 专业的MDB和ACCDB数据库查看器

Rose

macOS 的专业音乐播放器和 MIDI 文件编辑器QMidi Pro for Mac破解版

Rose

Vben-Admin 错误 Cannot destructure property 'VITE_GLOB_APP_TITLE' of 't' as it is undefined

麦兜

移相全桥DC-DC变换器快速设计与开发

芯动大师

芯片 DC-DC 电源控制

【线上问题】记一次公司日志基础组件SPI使用不当导致业务中断

Disaster

bug java 并发

Kubernetes反模式避坑指南

俞凡

Kubernetes 最佳实践

WorkPlus Meet局域网视频会议软件的领先解决方案

BeeWorks

散热利器来袭,TG Pro for Mac让你告别Mac过热问题!

Rose

华为配置Hotspot2.0无线网络示例

知孤云出岫

网络安全

解开命运之"结",重拾现实自由——《1Q84》中的奇幻现实与人生哲学

少油少糖八分饱

读书笔记 命运 村上春树 小说推荐 1Q84

精美和令人震撼的3D动态桌面壁纸Mach Desktop 4K for Mac

Rose

关于云交互与实时的云渲染技术

3DCAT实时渲染

实时云渲染 云交互

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