迅闻网
让更多人看到你

mongodb的优缺点及应用场景

  mongodb的优缺点及应用场景

MongoDB是用c++语言编写的,是一个基于分布式文件存储的开源数据库系统。
MongoDB,它使用内存映射文件并支持副本集。
面向文档存储的数据库,json类数据格式,自由灵活。
支持丰富的查询表达式。查询指令使用JSON标记方便地查询嵌入在文档中的对象和数组。
在高负载情况下,增加节点数量可以保证服务器性能。
内存映射文件(内存映射文件)
是虚拟内存中的一个部分,它按字节对应于一个文件,允许应用程序像访问内存一样处理文件。
它的主要用途是提高I/O性能,特别是对于大文件,其中访问内存映射文件的速度比直接文件读写快几个数量级,而且内存映射文件只能将一部分内容加载到用户的逻辑内存空间。这对于非常大的文件特别有用。
缺点:
内存映射文件需要在进程中占用大量连续的逻辑地址空间

mongodb
————————————————————————————–网上复制的总结——————————————————————————————–
写高负载
默认情况下,MongoDB关注高插入速度而不是事务安全。如果您需要加载大量低价值的业务数据,例如日志收集,那么MongoDB非常适合您的用例,但您必须避免在需要较高事务安全性的情况下使用MongoDB,例如价值1000万美元的事务。
处理非常大的规模单表:
数据库伸缩性非常具有挑战性,当单个表的大小达到5-10GB时,MySQL表的性能肯定会下降。如果需要对数据库进行分片和分割,MongoDB可以很容易地做到这一点。
不可靠的环境可以确保高可用性
设置副本集(主从设置)不仅方便快捷,而且使用MongoDB可以使节点(或数据中心)故障转移快速、安全、自动化。
使用基于位置的数据查询来更快地查找
MongoDB支持二维空间索引,例如管道,因此可以快速准确地从指定位置检索数据。
MongoDB启动后,将数据库中的数据以文件映射的形式加载到内存中。如果内存资源丰富,这可以大大提高数据库查询速度,因为内存的I/O效率比磁盘高得多
非结构化数据的爆炸
在某些情况下,添加列可能会锁定整个数据库或增加负载,从而导致性能下降,这种情况通常发生在表大于1GB时。考虑到MongoDB的弱数据结构模式,添加一个新字段不会对旧表产生任何影响,而且进程会非常快。因此,当应用程序发生更改时,不需要专门的DBA来更改数据库模式。
缺乏专业的数据库管理员
如果您没有专业的DBA,并且不需要结构化数据和join查询,MongoDB将是您的首选。MongoDB非常适合持久化类,这些类可以序列化为JSON并存储在MongoDB中。重要的是要注意,如果您希望实现更大的规模,您必须了解一些最佳实践以避免误入歧途。

未经允许不得转载:迅闻网 » mongodb的优缺点及应用场景
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

迅闻网-让更多人看到你

登录/注册返回首页