Couchbase2.0 性能将大幅提升

2011-06-17 04:19

Couchbase2.0 性能将大幅提升

by nosqlfan

at 2011-06-16 20:19:27

original http://item.feedsky.com/~feedsky/nosqlfan/~8149226/523754270/6253001/1/item.html

Couchbase官方博客今天发文称,Couchbase2.0的preview版本已经可以测试了,本版本进行了两个重要的改进,导致性能大幅提升。这两个改进是:

1.对数据进行了压缩存储

数据包括索引和文档数据,你可以选择使用Google’s Snappy或者zlib deflate压缩。数据在存在到文件之前会进行相应的压缩,这样大大减少了IO量。

2.异步IO操作

2.0版本中,CouchDB 的写文件操作会直接返回,然后当数据真的写到文件中后,调用方会可以得到一个通知,这样做的好处是,在本来会block住等待IO返回的时间里,程序可以做一些CPU密集型的操作。这种异步机制也大大减小了IO对整体性能的影响。

这两个改进相辅相成,最终使Couchbase2.0 的性能大幅提升,Couchbase官方对1.1.1版本和2.0版本做了性能对比测试,得出如下一些结果:

1.使用Erlang APi进行的测试

10个进程并发的写,每次写500条记录,分别测试了记录长度为1k和2.5k两种情况,结果如下,下面纵坐标表示写100000个文档花的时间。所以时间越短的越快。可以看出,2.0 的性能大概是1.1.1版本的3倍左右。

2.使用Basho 的测试工具通过HTTP API进行的测试

50个进程并发写,每次写100条记录,分别测试了记录长度为1k和2.5k两种情况,结果如下,下面纵坐标是5分钟写文档的数量,所以是越高越快。可以看出2.0版本大概也是1.1.1版本速度的2-3倍。

3.view建立时间测试

第一个叫Complex keys的库,是保存了551,200 条1Kb的记录,包含两个只有一对key-value值的view。

第二个是来自“warlogs” couchapp的数据,它包含了12个view,第个view可能有0个或多个key-value值对组成。

下面是测试结果,可以看出第一个大概速度是3倍以上。第二个大概是多个view本身的开销导致?

4.空间占用

我们上面说到了2.0 的一大改进是提供了压缩机制,那上面的数据在2.0和1.1.1中占用空间又如何呢。下面是对比图。我们可以看到,空间占用也大大减小。

来源链接:Driving performance improvements in Couchbase Single Server 2.0

觉得文章还不错?快分享给更多的人吧!

您可能还喜欢:

CouchBase创新应用赢大奖

Couchbase发布Membase Server1.7版本:集群、监控、管理功能增强

Mongodb 1.6与Mongodb 1.4的并发性能对比

MongoDB、HandlerSocket和MySQL性能测试及其结果分析

基于SSD的数据库性能优化
无觅