9、MongoDB与Mongoose入门指南

MongoDB与Mongoose入门指南

1. MongoDB基础特性

1.1 索引查询

MongoDB可以通过索引提高查询效率。例如,要查询评论数超过10的文档,可使用如下查询:

db.posts.find({ commentsCount: { $gt: 10 } });

若定义了 commentsCount 索引,MongoDB只需检查哪些文档的 commentsCount 属性大于10,再检索这些文档,而无需遍历所有文档。

1.2 副本集

为提供数据冗余和提高可用性,MongoDB采用副本集架构。副本集是一组托管相同数据集的MongoDB服务,其中一个为主节点,其他为从节点。所有节点支持读操作,但只有主节点负责写操作。当主节点发生写操作时,会通知从节点并确保它们将更改应用到数据集副本。
- 自动故障转移 :当某个节点超过10秒无法连接到主节点时,副本集会自动选举并提升一个从节点为主节点。原主节点恢复后,将作为从节点重新加入副本集。
- 仲裁节点 :仲裁节点不存储数据,主要用于维护副本集中的法定人数。它们参与新主节点的选举过程,但不能作为从节点或被选举为主节点。

1.3 分片

随着Web应用的发展,扩展是常见问题,可分为垂直扩展和水平扩展:
| 扩展方式 | 优点 | 缺点 |
| ---- | ----

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值