NOSQL简单对比


Cassandra

Mongodb

CouchDB

Redis

开发语言

JAVA

C++

Erlang

C / C++

特点

分布式与复制的权衡

根据列和键范围进行查询

BigTable类似的功能:列,列族

写比读快很多 

主从复制

查询利用javascript表达式

CouchDB更容易就地升级

内置Sharding

数据存储使用的是内存映射文件

数据库崩溃后需要对表进行修复

持久性更好

双向复制

主主复制(master-master replication)

冲突检测

多版本并发控制,写操作不会阻塞读取

通用的技术文档

只崩溃设计Crash-only

需要经常压缩

视图:嵌入式map/reduce

格式化视图:lists & shows

服务器端文档验证可行

身份验证可行

通过_changes实时更新

附件处理 

内存数据库

主从复制

简单的Key-Value

操作符较为复杂,如

ZREVRANGEBYS

CORE INCR & co

(有利于速率限制和统计)

有集合

(union/diff/inter)

有列表

(a queue; blocking pop)

有散列(多字段对象)

NoSQL中唯一处理交易的数据库

证书

Apache

Apache

Apache

BSD

协议

自定义/Thrift 

自定义/BSON 

HTTP/REST

Telnet-Like

最佳适用

基于JAVA,写操作较多,读少 

动态的查询,定义索引而非 map/reduce。数据变化快,磁盘不够用,可以使用MongoDB 

有大量数据,但更新不大,需要预先定义查询

数据快速变化,数据库大小可以预见(适合内存存取数据)

应用场景

银行,金融行业。数据分析

MySQL

PostgreSQL

的替代品

CRMCMS系统 

股价系统,数据分析,实时数据采集以及实时通信场景


Riak

HBase

Erlang/ C / JAVASCRIPT

JAVA

分布式与复制的权衡post-commit pre-commit hooks

安全性验证

内置的全文检索

Javascript

Erlang Map/reduce

分布式与复制的权衡

模仿BigTable

Map/reduce Hadoop

利用服务器端扫描进行查询预测叠加并获取过滤

优化的实时查询

高性能Thrift网关

HTTP支持XMLProtobuf和二进制

Cascadinghive

pig sourcesink模块

基于Jrubyshell

无单点故障

类似MySQL的随机访问性能

Apache

Apache

HTTP/REST

HTTP/REST/Thrift

简单的类似Cassandra

Dynamo的功能,较强的单点容错性和扩展性

随机数据、实时读取海量数据

销售点数据采集。工厂控制系统。需要零停机时间的场景

喜欢bigTable,需要随即、实时的读写大数据(Big Data)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值