你可能不知道的关于MongoDB的十个知识点

数据库 其他数据库 MongoDB
本文我们主要介绍了关于MongoDB的一些知识,这些知识可能是我们不曾知道的,但是对我们学习MongoDB又是很有帮助的,希望能够对您有所帮助。

MongoDB的使用是很简单的,参照着一些常用的教程下载相应平台的二进制包、创建dbpath,然后启动基本上就可以熟练操作了。但是如果你真的打算在生产环境中使用MongoDB,还是请多进行深入的研究,下面是一位MongoDB的爱好者在参加完MongoNYC大会后总结的十个自己了解到的知识点,看看有没有你不知道的吧。

1. MongoDB有一个大的全局锁,这使得一个MongoDB Daemon只能同时进行一个写操作,即使是对不同collection的操作,也只得排队。

2. MongoDB并没有一个基于统计的查询优化器,对查询并发的执行多个不同的计划,在最快的那个返回后就终止其它任务,并将这个最快的计划指导查询。当然不是每次查询都执行多个不同计划,这个会隔一段时间执行一次。

3. Mongos只有在你使用Sharding时才需要,在不用Sharding时,实际上是客户端来实现负载均衡的。

4. MongoDB不仅仅只有Replica Sets,还有传统的Master-Slave模式。(实际上你想配置成Master-Master也完全可以)

5. MongoDB的同步机器支持“slave-delay”参数,这个参数指定Slave机器延迟Master多长时间。这个参数用来做准备非常合适。

6. MongoDB 使用了mmap,在32位系统下数据文件只能达到2G,所以32位系统下的MongoDB玩玩就够了。

7. MongoDB会在日志里记录执行时间超过100ms的操作,实际上这个是可以灵活配置的。

8. MongoDB可以运行一些耗时较长的统计分析任务。

9. MongoDB不支持多主对单从的架构(这个应该是支持的,原文作者可能理解错了)。

10. MongoDB的Replica Sets 模式下,可以设置一些节点为Arbiter,它们不存储数据,只在需要重新选Primary时参与投票。

关于MongoDB的知识就介绍到这里了,希望本次的介绍能够对您有所帮助。

【编辑推荐】

  1. 关于数据库查询性能调优和索引优化的总结
  2. SQL Server数据库远程查询并批量导入数据
  3. 存储过程:sp_MSforeachtable/sp_MSforeachdb
  4. CASE语句在Oracle中重新给指定字段赋值的用法
  5. 关于使用数据库登录名和数据库用户名的一些心得
责任编辑:赵鹏 来源: 博客园
相关推荐

2022-10-27 21:01:03

JavaScrip面试题开发

2024-09-11 16:21:09

2019-11-20 10:25:06

sudoLinux

2015-05-14 15:59:33

DockerLinux容器管理工具

2013-05-23 11:57:42

以太网千兆网络以太网发展

2012-11-23 10:57:44

Shell

2018-05-10 11:50:13

Docker容器冷知识

2021-01-05 11:22:58

Python字符串代码

2020-01-29 19:40:36

Python美好,一直在身边Line

2015-08-13 09:03:14

调试技巧

2011-02-14 16:11:44

2020-03-05 11:10:18

Left join数据库MySQL

2023-02-27 09:20:24

绝对定位CSS

2023-01-29 09:46:47

Dialog弹窗模态

2024-03-04 00:00:00

Kubernetes技巧API

2016-09-05 13:14:11

2014-11-21 10:25:18

Java

2014-12-08 10:39:15

2019-11-25 14:05:47

Python装饰器数据

2020-07-02 15:43:26

Kubernetes容器工作负载
点赞
收藏

51CTO技术栈公众号