为了账号安全,请及时绑定邮箱和手机立即绑定

nosql和mongodb的区别

/ 猿问

nosql和mongodb的区别

慕斯王 2019-05-14 09:08:31

nosql和mongodb的区别


查看完整描述

3 回答

?
蝴蝶刀刀

NoSQL与关系型数据库设计理念比较  

关系型数据库中的表都是存储一些格式化的数据结构,每个元组字段的组成都一样,即使不是每个元组都需要所有的字段,但数据库会为每个元组分配所有的字段,这样的结构可以便于表与表之间进行连接等操作,但从另一个角度来说它也是关系型数据库性能瓶颈的一个因素。而非关系型数据库以键值对存储,它的结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。

特点:
它们可以处理超大量的数据。

它们运行在便宜的PC服务器集群上。

它们击碎了性能瓶颈。

没有过多的操作。

Bootstrap支持




查看完整回答
反对 回复 2019-05-15
?
45度呼吸

1,Cassandra:

Cassandra从安装配置,到使用,负载平衡机制等等,无疑是这些新兴的NoSQL中最方便使用的一个(个人使用体验观点)

但从近期的消息来看由于出现过几次较为严重的数据库停止服务事件,Cassandra的创始人Facebook,及Twitter开始渐渐弃用
Cassandra,只把Cassandra用在非核心模块上,不地Digg仍在使用,看来我们要谨慎地对待它。2008年Facebook已让
Cassandra开源到Apache.

2.MongoDB:

它的风格可以说,在当今WebAPI流行的时代,它更易于被人使用,BJSON操作风格,自动数据平衡机制(当然要当心存贮碎片问题),相对
MySQL等SQL数据库有优秀考虑全面的,分布式方案,自动M/S主从读写切换。对于数据集群来说,可以说相当完美的Sharding等自动化支持。至
今听说过的最严重的事件就是FourSquare的11小时数据库宕机事件。相对来说还能接受:),它是使用C++/Boost编写,效率性能的确不错。

3.Redis:

它就是一个高效的内存数据库,用它来持久化数据存贮,那是扯淡,如果真拿它来与别的NoSQL一样使用(考虑读写一致性或者写安全)那它马上慢下
来:)不过他提供了比Memcached更多的操作数据类型,倒可以完全用它来做为一个高效易用的缓存,Benchmark据说优于memcached.
我用的数据规模没有这么大,不敢妄加评论。

4.HBase:

概念上也相对完美,有Hive开源工具支持,使HBase,可以相对于其它NoSQL数据库更易于使用,基于HDFS分布文件系统,使HBASE天
生就有对海量分布集群很好的支持。又因为与Hadoop相伴而生,所以一个系统想使用数据分析,智能处理,海量逻辑执行,完全可以选择Hadoop +
HBase云计算方案。

MongoDB也支持js的Map/Reducer所以可以试着整合一下MongoDB进云计算方案中。

当我使有MySQL +
NoSQL方案时,我会选择MongoDB,不仅是因为他的出色的海量分布式方案的支持,也不是因为经的Map/Reducer分布式计算的支持。而是因
为还没听说过它有过重大的失败案例,相对较完美的文档(还有中文手册哟)还有JSON分格支持,在当下WebAPI流行的时代,不仅是从个人喜爱角度,也
是从工程管理角度,开发人员更Love it,呵呵。





查看完整回答
反对 回复 2019-05-15
?
缥缈止盈

1、稳定性

2、索引,索引放在内存中,能够提升随机读写的性能。如果索引不能完全放在内存,一旦出现随机读写比较高的时候,就会频繁地进行磁盘交换,MongoDB的性能就会急剧下降

3、占用的空间很大,因为它属于典型空间换时间原则的类型。那么它的磁盘空间比普通数据库会浪费一些,而且到目前为止它还没有实现在线压缩功能,

在MongoDB中频繁的进行数据增删改时,如果记录变了,例如数据大小发生了变化,这时候容易产生一些数据碎片,出现碎片引发的结果,

一个是索引会出现性能问题,

另外一个就是在一定的时间后,所占空间会莫明其妙地增大,所以要定期把数据库做修复,定期重新做索引,这样会提升MongoDB的稳定性和效率。

在最新的版本里,它已经在实现在线压缩,估计应该在2.0版左右,应该能够实现在线压缩,可以在后台执行现在repair DataBase的一些操作。如果那样,就解决了目前困扰

我们的大问题。

4、MongoDB对数据间的事务关系支持比较弱

5、运维不方便



查看完整回答
反对 回复 2019-05-15

添加回答

回复

举报

0/150
提交
取消
意见反馈 邀请有奖 帮助中心 APP下载
官方微信