各种nosql数据库的比较Cassandra,MongoDB,CouchDB,Redis,Riak,HBase

时间:2022-08-15 08:52:51
 
各种nosql数据库的比较Cassandra,MongoDB,CouchDB,Redis,Riak,HBase

CouchDB

开发语言:: Erlang

主要优点: 数据一致性,易用

许可: Apache

Protocol: HTTP/REST

适用: 积累性的、较少改变的数据。或者是需要版本比较多的

举例: CRM, CMS systems. 允许多站部署.

Redis

开发语言:: C/C++

主要优点: 一个字 快

许可: BSD

Protocol: Telnet-like

适用: 总数据集快速变化且总量可预测.内存需求较高

举例: 股票价格、实时分析、实时数据收集、实时通信.

MongoDB

开发语言:: C++

主要优点: 类似SQL. (查询, 索引)

许可: AGPL (Drivers: Apache)

Protocol: Custom, binary (BSON)

适用: 动态查询; 索引比map/reduce方式更合适时; 跟CouchDB一样,但数据变动更多.

举例: 任何用Mysql/PostgreSQL的场合,但是无法使用预先定义好所有列的时候

Cassandra

开发语言:: Java

主要优点: 最好的BigTable和Dynamo

许可: Apache

Protocol: Custom, binary (Thrift)

适用: 写入比查询多,只支持Java

举例: 银行,金融行业.

Riak

开发语言:: Erlang & C, some Javascript

主要优点: 容错性高

许可: Apache

Protocol: HTTP/REST

适用: 类似 Cassandra,但比较简单. 如果你需要非常好的可扩展性,可用性和容错性,但你要多站点部署必须付费。

举例: 销售数据的收集。 工厂控制系统。 几秒钟的停机就会有伤害的地方。.

HBase

开发语言:: Java

主要优点: 支持数十亿的列

许可: Apache

适用: 类似 BigTable.gae上就是BigTable

举例: Facebook