面试题答案
一键面试优化思路
- 索引优化:为包含null值的特定字段创建索引,即便存在null值,索引也能提升查询效率。
- 查询优化:使用合适的查询操作符,如
$eq: null
进行精确查询。 - 分片键考量:确保分片键不会影响对包含null值字段的查询,避免数据倾斜。
操作步骤
- 创建索引:
db.collection_name.createIndex({field_name: 1})
- 查询操作:
db.collection_name.find({field_name: null})
配置调整
- 分片配置:检查分片键设置,若当前分片键导致查询涉及大量跨分片操作,考虑调整分片键。
- 副本集配置:确保副本集成员有足够资源支持查询,可适当增加副本集成员以提升读性能。