Cassandra 2.1 性能提升超过 50%

  • 马德奎

2014 年 8 月 1 日

话题:性能调优语言 & 开发架构

7 月 16 日,DataStax 开发者博客发表了一篇博文,声称 Cassandra 2.1 性能提升超过了 50%。

在改进压缩、提升 Repairs 效率的同时,Cassandra 2.1 对内核的读写路径进行了大幅的改进。其中两项最大的变化是:向 CQL 分发器中添加“响应分组(response grouping)”和引入工作线程池 ShardExecutorPool。

该文称,这些改进使它的读操作性能比 2.0 CQL 提升了 75%,比 Thrift 提升了 160%,如下图所示:

在写操作性能方面,情况类似——比 2.0 CQL 提升了 95%,比 Thrift 提升了 150%,如下图所示:

对于上图,文中特别指出,Cassandra 2.1 的写操作性能波动比较大。虽然在大多数时间里,写操作速率都在 190k ops/s 以上,但也经常会降到 120,因此平均写操作速率大约为 180。

在 32 核 VM 的单个 commitlog 磁盘上,写操作是个瓶颈。本文作者 Jonathan Ellis 表示,他们将优先进行 commitlog 压缩以及尽快支持多个 commitlog 卷。另据报道,Cassandra 2.1 版本开始的改进最终将在 Cassandra 3.0 完成,而CASSANDRA–6506是当前遗留的一项主要任务。

今年 3 月,InfoQ 曾报道过Cassandra 2.1,当时就曾提到写操作性能提升约 50%。如今看来,CQL 性能的巨大提升使它兑现了当初的承诺。另外,性能提升幅度会因硬件环境的差异而有所不同。

当前,Cassandra 的最新稳定版本为 2.0.9,最新开发版本为 7 月 19 日刚刚发布的 2.1.0-rc4。


感谢郭蕾对本文的审校。

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

性能调优语言 & 开发架构