3.4.4. 避免过度索引 MongoDB索引最佳实践指南——避免过度索引 为了更好地理解和应用“避免过度索引”的理念,下面将详细介绍几个具体的实践案例,展示如何在实际场景中做出明智的选择: 案例一:单一字段 vs 复合索引 假设有一个包含大量文档的集合,其中每个文档都包含了多个属性(例如姓名、年龄、性别等)。如果用户经常会根据单个字段(如年龄)来进行搜索,那么单独为这个字段创建一个索引就足够了。但是,当用户的查询条件涉及到两个或者更多的字段时,比如同时查找特定年龄段内的女性用户,则应该考虑创建复合索引来覆盖所有相关的查询条件。 这里需要注意的是,虽然复合索引可以处理多个查询条件,但它也意味着更高的存储开销和写入延迟。因此,在决定是否采用复合索引之前,一定要仔细评估查询频率及复杂度。