【大数据-文摘笔记】MongoDB、Cassandra 和 HBase 三种 NoSQL 数据库比较

1.超过100种的NoSQL 数据库,该如何选择?数据库

目前市场主要围绕在三个NoSQL数据库上:MongoDB,Cassandra(主要由DataStax开发的,诞生于Facebook),和HBase的(和Hadoop紧密关联在一块儿,也被相同社区开发出来)。缓存

补充一点,故意排除Redis,主要是由于相对于大数据存储,它主要用于高速内存缓存数据应用。安全

上图来自于 DB-Engines 各类数据库的流行度排名(https://db-engines.com/en/ranking_trend),能够看到前面几年基本上都是关系数据库 Oracle、MySQL、SQL Server 以及 PostgreSQL 的天下。MongoDB 排名第五名, Cassandra 排名十名,而 HBase 排名十七名。服务器

2.MongoDB:源于开发人员,为开发人员服务oop

MongoDB 一般是开发人员第一个尝试的NoSQL数据库,由于它是很容易学习。(MongoDB以文档的形式存储数据,不支持事务和表链接。所以查询的编写、理解和优化都容易得多。)性能

MongoDB是专门为OLTP(On-Line Transaction Processing,联机事务处理系统)模式。若是您须要复杂的事务处理,它不是一个好的选择。然而,MongoDB的简单性使其成为一个优秀的存储。学习

3.Cassandra:规模化安全运行大数据

MongoDB赢得人心的缘由是简单的开发应用,Cassandra赢得人心是由于易于管理的规模。优化

Cassandra在机器拓展部署上,表现特别出色。Cassandra自带的备份机制,保证各个数据中心的数据安全。至于增长容量到集群,“你只需启动一台新机器,并告诉Cassandra那里的新节点,而后它完成其余剩下的事情。spa

4.HBase:Hadoop的知心伙伴

HBase,像Cassandra同样是个经过key-value面向列存储的服务。HBase提供了一个基于记录的存储层,可以快速随机读取和写入数据,正好弥补了Hadoop的缺陷,Hadoop侧重系统吞吐量,而牺牲I / O读取效率为代价。

HBase能够利用任何数量服务器的磁盘、内存和CPU资源,同时拥有极佳的扩展功能,如自动分片。当系统负载和性能要求不断增长,HBase的可经过简单增长服务器节点的方式无限拓展。

因为它与Hadoop的生态系统紧密集成,对于用户和应用程序来讲,数据是容易获取的,能够经过SQL的方式查询(使用Cloudera的Impala,Phoenix,或Hive),甚至自由文本搜索(使用Cloudera Search)

 

参考文档:

MongoDB、Cassandra 和 HBase 三种 NoSQL 数据库比较

相关文章
相关标签/搜索