6.常见的NoSQL及区别

 

02.常见的NoSQL及区别

1. 常见的NoSQL数据库

|临时性键值存储|永久性键值存储|面向文档的数据库|面向列的数据库|
|-|-|-|-|-|
|Memcached|Tokyo Tyrand|MangoDB|Cassandra|
|Redis|Flare|CouchDB|HBase|
||ROMA||HyperTable|
||Redis|||

2. 区别

1,Memcached

挥发性(临时性)的键值存储

一般作为关系型数据库的缓存来使用

具有非常快的处理速度

由于存在数据丢失的可能,所以一般用来处理不需要持久保存的数据

用于需要使用expires时(需要定期清除数据)

使用一致性散列(Consistent Hashing)算法来分散数据

2,Tokyo Tyrant

持久性的键值存储

用来处理需要持久保存,高速处理的数据

具有非常快的处理速度

用于不需要定期清除的数据

使用一致性散列(Consistent Hashing)算法来分散数据

3,Redis

兼具Memcached和Tokyo Tyrant优势的键值存储

擅长处理数组类型的数据

具有非常快的处理速度

可以高速处理时间序列的数据,易于处理集合运算

拥有很多可以进行原子操作的方法

使用一致性散列(Consistent Hashing)算法来分散数据

4,MongoDB

面向无需定义表结构的文档数据

具有非常快的处理速度

通过BSON的形式可以保存和查询任何类型的数据

无法进行JOIN处理,但是可以通过嵌入(embed)来实现同样的功能

使用sharding(范围分割)算法来分散数据