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 )关注我们,并与我们的编辑和其他读者朋友交流。
评论