这是一篇基于亚马逊云平台上对三个主流的NoSQL数据库性能比较,在读写两个操作不同的组合情况下性能表现不同。


横坐标是吞吐量,纵坐标是延迟,这是一对矛盾,吞吐量越大,延迟越低,代表越好。


1. 纯粹插入,Cassandra领先,见下图:



2.WorkloadA: 读修改操作各占一半情况下的修改性能:MongoDB明显延迟增加,落败:



3.WorkloadB:读修改操作各占一半情况下的读性能:Cassandra落后



4.WorkloadB: 95%的read和5%的update以读为主的场景下修改性能:MongoDB落后:



5.WorkloadB: 95%的read和5%的update以读为主的场景下读取性能:

三者差不多,HBase好些:



6.WorkloadC 100%的read:



7.WorkloadD 5%的插入和95%的读的场景下插入性能,Cassandra表现最好。



8.WorkloadD 5%的插入和95%的读的场景下读性能,Cassandra表现最好。



9.WorkloadF 50%的read-modify-write 和50%的read,读取性能:



10.WorkloadF 50%的read-modify-write 和50%的read,修改性能,MongoDB表现最差



11.WorkloadF 50%的read-modify-write 和50%的read,read-modify-write性能,MongoDB表现最差



12.WorkloadG 90%的插入insert和10%的读取,插入性能:



总体个人总结:HBase比较中庸些,适合各种场景,Cassandra适合读写分离的场景,写入场景使用Cassandra,比如插入操作日志,或领域事件日志的写入;而MongoDB适合做读写分离场景中的读取场景,Cassandra与MongoDB之间使用定时同步,适合一致性要求不是特别强的业务。





或者关注soledede的微信公众号:soledede

微信公众号:

Cassandra HBase和MongoDB性能比较_读写分离

相关资源:...其中包括设备资产管理,数据提取,大数据存储以及通过现代可扩展...

————————————————