操作概述
MongoDB包含许多功能,这些功能允许数据库管理员和开发人员通过功能或地理分组来隔离工作负载。
此功能提供了“数据中心感知”功能,该功能使应用程序可以在考虑mongod
实例的物理位置的情况下针对MongoDB部署。MongoDB支持跨不同维度的操作细分,其中可能包括多数据中心部署中的多个数据中心和地理区域,单个数据中心部署中的机架,网络或电源电路。
MongoDB还支持基于功能或操作参数的工作负载隔离,以确保某些
mongod
实例仅用于报告工作负载,或者确保分片集合的某些高频部分仅存在于特定分片上。
具体来说,使用MongoDB,您可以:
- 确保写操作传播到副本集的特定成员或副本集的特定成员。
- 确保副本集的特定成员响应查询。
- 确保分片密钥的特定范围平衡到特定分片并驻留在特定分片上。
- 在每个操作(用于读写操作)和集合(用于分片群集分发中的块分发)的基础上,将以上功能组合到单个分布式部署中。
有关这些功能的完整文档,请参阅《 MongoDB手册》中的以下文档:
- 读取首选项,它控制驱动程序如何帮助应用程序将读取操作定向到副本集的成员。
- 写入问题,控制MongoDB如何确保写入操作传播到副本集的成员。
- 副本集标签,控制应用程序如何创建副本集成员的自定义分组并与之交互,以创建特定于应用程序的自定义读取首选项和写关注点。
- 分片群集中的区域,这使MongoDB管理员可以创建代表一组分片的区域,并将一个或多个分片键值范围与这些区域相关联。您可以将每个区域与集群中的一个或多个分片关联。分片可以与任意数量的区域关联。在平衡群集中,MongoDB仅将区域覆盖的读写定向到区域内的分片。
也可以看看
在为应用程序和MongoDB部署添加工作负载隔离功能之前,请熟悉复制和分片的所有文档
。