18
2020
10

什么是secondary或slave?

Seconday从当前的primary上复制相应的操作。它是通过跟踪复制oplog(local.oplog.rs)做到的。
18
2020
10

什么是master或primary?

它是当前备份集群(replica set)中负责处理所有写入操作的主要节点/成员。在一个备份集群中,当失效备援(failover)事件发生时,一个另外的成员会变成primary。
18
2020
10

我怎么查看 Mongo 正在使用的链接?

db._adminCommand(“connPoolStats”);
18
2020
10

分片(sharding)和复制(replication)是怎样工作的?

每一个分片(shard)是一个分区数据的逻辑集合。分片可能由单一服务器或者集群组成,我们推荐为每一个分片(shard)使用集群。
18
2020
10

如何执行事务/加锁?

MongoDB没有使用传统的锁或者复杂的带回滚的事务,因为它设计的宗旨是轻量,快速以及可预计的高性能。可以把它类比成MySQL MylSAM的自动提交模式。通过精简对事务的支持,性能得到了提升,特别是在一个可能会穿过多个服务器的系统里。
18
2020
10

Mongodb允许空值null吗?

对于对象成员而言,是的。然而用户不能够添加空值(null)到数据库丛集(collection)因为空值不是对象。然而用户能够添加空对象{}。
18
2020
10

分析器在MongoDB中的作用是什么?

MongoDB中包括了一个可以显示数据库中每个操作性能特点的数据库分析器。通过这个分析器你可以找到比预期慢的查询(或写操作);利用这一信息,比如,可以确定是否需要添加索引。
18
2020
10

Mongodb 的索引注意事项?

索引很有用,但是它也是有成本的——它占内存,让写入变慢;mongoDB通常在一次查询里使用一个索引,所以多个字段的查询或者排序需要复合索引才能更加高效;复合索引的顺序非常重要在生成环境构建索引往往开销很大,时间也不可以接受,在数据量庞大之前尽量进行查询优化和构建索引;避免昂贵的查询,使用查询分析器记录那些开销很大的查询便于问题排查;通过减少扫描文档数量来优化查询,使用explai对开销大的查询进行分析并优化;索引是用来查询小范围数据的,不适合使用索引的情况: 每次查询都需要返回大部分数据的文档
18
2020
10

如果一个分片(Shard)停止或很慢的时候,发起一个查询会怎样?

如果一个分片停止了,除非查询设置了“Partial”选项,,否则查询会返回一个错误。如果一个分片响应很慢,MongoDB会等待它的响应。
18
2020
10

如何理解MongoDB中的GridFS机制,MongoDB为何使用GridFS来存储文件?

GridFS是一种将大型文件存储在MongoDB中的文件规范。使用GridFS可以将大文件分隔成多个小文档存放,这样我们能够有效的保存大文档,而且解决了BSON对象有限制的问题。