MongoDB 聚合管道优化

MongoDB 在聚合之前会有一个优化阶段来提升性能。在开发中,也可以参考这些优化方式,来优化咱们的聚合查询。

映射优化

聚合管道可以确定它是否只需要文档中字段的一个子集就可以获得结果。 如果是这样,管道将只使用那些必需的字段,从而减少通过管道传递的数据量。

$match 后,可以先 $project 掉一些不需要的字段(通过 {fileName: 0 || false} 来实现)。

管道序列优化

($project or $unset or $addFields or $set) + $match 序列优化。

参考

聚合管道优化