MongoDB 在项目中的索引与建模体会
个人项目选用 MongoDB 主要是因为 Schema 灵活、与 Node.js 生态配合良好。 使用 Mongoose 建模时,需要在灵活性与查询性能之间做权衡。
索引设计
对高频查询字段建立单字段或复合索引,例如按 operatorId + gameId 联合查询绑定关系。
上线前用 explain() 确认是否走索引,避免全表扫描。
建模心得
- 嵌入 vs 引用:读多写少的配置适合嵌入,关联实体多用引用 + populate
- 软删除字段 status,便于审计与恢复
- 数值型业务 ID 与 MongoDB _id 分离,对外接口更稳定
以上均为个人实践总结,具体方案需结合业务场景调整。