写点什么

NoSQL 基准对比 Aerospike、Cassandra、Couchbase 和 MongoDB

  • 2013-04-23
  • 本文字数:1371 字

    阅读完需:约 4 分钟

为了查看 Aerospike、Cassandra、Couchbase 和 MongoDB 这些数据库在处理插入吞吐量、最大吞吐量时的表现以及故障恢复期间的延迟时间和行为,最近的一个基准集合对这些数据库做了比较。

Thumbtack Technology 发布了两个基准白皮书,其中包含了一些键—值存储的比较结果:超高性能 NoSQL__ 基准_:_ 分析持久性和性能权衡 (PDF) NoSQL__ 故障恢复 __ 特性_: Aerospike__、Cassandra、_Couchbase__ 和 __MongoDB _(PDF)__。_ 这两个基准都试图检测“直面客户的应用程序,它们需要非常高的吞吐量和低延迟时间,同时其信息又能够使用键 - 值模式表示”。

Thumbtack 使用了一个改善版本的 Yahoo! 云服务基准 (YCSB) ,该基准可以克服使用高容量多客户端时遇到的一些限制。YCSB 的变化已经写入了第一个白皮书并且提交回了社区。

测试的 NoSQL 数据库包括 Aerospike Cassandra Couchbase (1.8 和 2.0)和 MongoDB 。第一个是商业化产品,最后一个是文档数据存储而不是键 - 值存储,但是因为“在我们遇到的客户端中经常考虑将它用于相似类型的应用程序中”,所以我们将之包含了进来。所有的数据库都使用其提供商提供的建议做了优化。测试系统使用 SSD 存储,而没有使用旋转磁盘。白皮书中详细记录了测试所使用的方法论、客户端、工作量配置以及硬件配置等信息。

Thumbtack 承认它们和“Aerospike、Couchbase 以及 10gen 有商业和(或)战略合作关系”,同时使用的硬件也是从 Aerospike 租用的。

下面列出了一些测试的基准结果。

插入吞吐量

数据库通过 YCSB 的加载路由执行了大量插入,载入了初始的工作集合。Couchbase 在工作集合载入内存中时结果很好,但是在工作集合载入 SSD 时遇到了问题,Couchbase 1.8 没有完成操作,而对 Couchbase 2.0 而言则必须使用较小的集合和异步模式。图中蓝色圆柱表示的就是 Couchbase,Aerospike 处在第二位。

1:插入吞吐量

注意:对 Couchbase 2.0 而言,SSD 吞吐量使用的样本较小,同时是异步模式;而对 Couchbase 1.8 而言,即使减少数据集也不能加载。

最大吞吐量

该测试使用了一个“强持久性模型,在复制时使用了一个相对服务器的 RAM 而言非常大的数据集。该测试打算作为保证强持久性的事务型数据的使用典范”。

在这个图表中并没有 Couchbase,因为使用同步复制时它无法完成测试。

2:最大吞吐量——SSD支持的数据集

在使用异步复制时,内存中的结果如下:

3:最大吞吐量——内存数据集

延迟时间/吞吐量

基准还测量了在不同级别的传输下读取和更新的延迟时间。下面的图表包含了一个完整视图和每个对应的缩放视图。

4a——4d:延迟时间/吞吐量结果(平衡负载)

故障恢复

Thumbtack 还模拟了一个硬件错误,以便查看在一个节点无法工作时会发生什么:

注意:以上结果依赖于使用的驱动,像 Hector 这样较新的驱动能恢复到 100% 的吞吐量。同时假设监控脚本完美。

基准还测量了宕机时间,例如集群从发生错误开始到能够响应所需要的时间,所有数据库显示的值都合理:

6:宕机时间、异步复制和基于RAM的数据集

Thumbtack 基准还包含了很多其他不同情况下的不同结果,但是此处并没有包含这些内容。

另一个NoSQL 基准发布于2012 年10 月,其中对比了Cassandra、HBase、MongoDB 和Rick。这些测试中还包含了MySQL,作为针对SQL 技术的一个参考。

查看英文原文 NoSQL Benchmark Compares Aerospike, Cassandra, Couchbase and MongoDB

2013-04-23 03:139885
用户头像

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

关注

评论

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

细粒度授权在安全领域的重要性

龙归科技

安全 iam 细粒度 ABAC PBAC

数字孪生技术如何实现复制世界?关键的关键是…

华为云开发者联盟

数据中心 数字孪生 节能 仿真 数据中心网图服务

真·“拜师学艺”?2021中科院开源之夏,开源大牛1V1&万元奖金只等你来!

京东科技开发者

开源 开源社区

聊聊什么是CommonJs和Es Module及它们的区别

蛙人

大前端 js ES6

力扣(LeetCode)刷题,简单题(第27期)

不脱发的程序猿

面试 LeetCode 28天写作 算法面经 3月日更

“新作者 新入驻 新征程”第一季获奖名单

InfoQ写作社区官方

热门活动

与前端训练营的日子 -- Week19

SamGo

学习

ECMAScript 2016(ES7)新特性简介

程序那些事

JavaScript ecmascript ES6 程序那些事 es7

植树节,种个二叉树吧?

悟空聊架构

数据结构 算法 二叉树

一步一步教你如何在Centos7中配置Kafka运行时环境

happlyfox

28天写作 3月日更

你的终端从未如此优雅

Kareza

终端工具 3月日更 Hyper

如何成为一名架构师?

xcbeyond

程序人生 方法论 架构师 成长与思考 3月日更

对标阿里P9Java架构师面试题,已助我拿下字节、蚂蚁、滴滴三家Offer

Java架构追梦

Java 阿里巴巴 架构 面试 滴滴

寻找被遗忘的勇气(十二)

Changing Lin

3月日更

你以为在做的是微服务?不!你只是做了个比单体还糟糕的分布式单体!

程序猿DD

微服务

“种”下黑科技,守护每株绿,“植”了!

华为云开发者联盟

华为 AI IoT modelarts 森林

《未来世界的幸存者》读书笔记

SilentMacUser

极客时间 互联网 技术学习 阅读 阮一峰

硬核!一文学完Flink流计算常用算子(Flink算子大全)

五分钟学大数据

大数据 flink 28天写作 3月日更

区块链应用解决方案赋能到农产品溯源上究竟能解决什么问题?

源中瑞-龙先生

安卓系统开发架构!5214页PDF的进阶架构师学习笔记,成功入职腾讯

欢喜学安卓

android 程序员 面试 移动开发

物联网常用协议:MQTT、CoAP、LwM2M、HTTP、LoRaWAN和NB-IoT

不脱发的程序猿

物联网 通信协议 28天写作 3月日更 物联网常用协议

【LeetCode】验证二叉树的前序序列化Java题解

Albert

算法 LeetCode 28天写作 3月日更

2月大事件:度目CM-Mini智能面板机全新发布,飞桨PaddleGAN“复活”李焕英

百度大脑

百度 百度大脑

安卓应用程序开发理论!免费Android高级工程师学习资源,附面试题答案

欢喜学安卓

android 程序员 面试 移动开发

知道Python中的字符串是什么吗?

华为云开发者联盟

Python 编程语言 字符串 字符

关于广东欢太科技可不可信?那是你还不了解

Geek_4a453c

企业 欢太 欢太科技

带你了解VXLAN网络中报文的转发机制

华为云开发者联盟

网络 网关 VXLAN 报文 分布式网关

华云大咖说 | 华云数据与瀚高软件携手共建国产云生态 助力政企用户安全可靠发展

华云数据

一起来学习LiteOS中断模块的源代码

华为云开发者联盟

代码 华为云 LiteOS 中断 中断控制器

技术债是什么、怎么还?你想知道的都在这一篇文章里了!

禅道项目管理

技术 技术债 问题

你的终端从未如此高效

Kareza

3月日更 Oh My Zsh

NoSQL基准对比Aerospike、Cassandra、Couchbase和MongoDB_架构_Abel Avram_InfoQ精选文章