常见NoSQL数据库的应用场景是怎么样的?

  • 回答 (7)
  • 关注 (0)
  • 查看 (402)

NoSQL数据库的类型非常多样,有没有大神能分析一下常见的Cassandra,HBase,MongoDB,Couchbase,SequoiaDB,Aerospike,Redis,Riak等数据库的特点,以及应用场景?以让我们这些门外汉好清楚它们的各自的应用范围。比如行业,比如实际需求,比如技术特点等。

凤凰男凤凰男提问于
MH小夜雨时学生回答于

我之前也有这样的疑问,查了不少资料,现在分享出来给大家一起学习哈。

1. CouchDB

所用语言: Erlang 特点:DB一致性,易于使用

最佳应用场景:适用于数据变化较少,执行预定义查询,进行数据统计的应用程序。适用于需要提供数据版本支持的应用程序。

例如: CRM、CMS系统。

2.Redis

所用语言:C/C++ 特点:运行异常快

最佳应用场景:适用于数据变化快且数据库大小可遇见(适合内存容量)的应用程序。

例如:股票价格、数据分析、实时数据搜集、实时通讯。

3. MongoDB

所用语言:C++ 特点:保留了SQL一些友好的特性(查询,索引)

最佳应用场景:适用于需要动态查询支持;需要使用索引而不是 map/reduce功能;需要对大数据库有性能要求;需要使用 CouchDB但因为数据改变太频繁而占满内存的应用程序。

例如:你本打算采用 MySQL或 PostgreSQL,但因为它们本身自带的预定义栏让你望而却步。

4. Membase

所用语言: Erlang和C 特点:兼容 Memcache,但同时兼具持久化和支持集群

最佳应用场景:适用于需要低延迟数据访问,高并发支持以及高可用性的应用程序

例如:低延迟数据访问比如以广告为目标的应用,高并发的 web 应用比如网络游戏(例如 Zynga)

Lonely永夜回答于

HBase: 分布式的HashMap

MongoDB:分布式的json

Redis:分布式的内存的HashMap

software微软、谷歌、腾讯、阿里、百度……回答于

我也说几个吧。

Redis:本质是一个Key-Value类型的内存数据库,主要是局限在较小数据量的高性能操作和运算上,目前使用Redis的网站有github,Engine Yard。

MongoDB:是一个介于关系数据库和非关系数据库之间的产品,访问速度很快。很适合电话本、地址本的一些应用。

HBase:如果非常需要即时、实时的读取大数据的话,就很适合使用HBase,应用场景比如说有大家很了解的Facebook。

MOISTG数学本科在修,顺带旁听计算机智能科学。喜欢计科,美食,旅游。一个走错路的文科生。回答于

我个人用到过的两种: 1 MongoDB 存储系统中实体对象,因其数据结构的弱约束,应用于快速迭代的产品开发中非常方便。其分片、集群支持很好,方便扩展。 2 Redis KV高速缓存,高级的数据结构支持,适应于不同需求。

小川医学生回答于

GrapgDB,最主要的优点就是解决了图计算,我个人觉得图数据库以后会更流行。

一个短篇回答于

Tokyo Cabinet是一个key-value的DBM数据库,读写操作很高效,但是数据量上去了之后性能会降低,这点不太好。

狼宝珏回答于

扫码关注云+社区

领取腾讯云代金券