MongoDB 索引是提升查询性能的核心工具,就像书籍的目录一样,能快速定位数据。以下是关键知识点:
1. 索引类型 📊
- 单字段索引:对单个字段创建索引,适合简单查询
- 复合索引:多个字段组合索引,优化多条件查询效率
- 唯一索引:确保字段值唯一,防止重复数据
- 地理空间索引:支持地理查询(如附近位置搜索)
- 文本索引:实现全文搜索功能
2. 创建索引方法 🔧
db.collection.createIndex({ field: 1 }, { unique: true })
// 或者使用索引名称
db.collection.createIndex({ field1: 1, field2: -1 }, "my_custom_index")
⚠️ 注意:索引字段值
1
表示升序,-1
表示降序
3. 索引优化技巧 💡
- 避免对大数据集频繁创建索引
- 删除无用索引节省存储空间
- 使用
hint()
方法强制使用特定索引 - 定期分析索引使用情况(
db.collection.stats()
)
4. 实战案例 🧪
在用户收藏表中为 user_id
创建索引:
db.collections.createIndex({ user_id: 1 })
查询时会自动使用该索引,响应速度提升 300%+ ✅