Overview
在本指南中,您可以学习;了解如何使用MongoDB Node.js驾驶员执行聚合操作。
聚合操作会对 MongoDB 集合中的数据进行处理,并返回计算结果。MongoDB 聚合框架以数据处理管道的概念为模型。文档通过一个或多个阶段组成的管道流转,该管道将文档转化为聚合结果。
要学习;了解有关 Node.js驾驶员支持的聚合阶段的详情,请参阅 聚合管道阶段。
提示
完成聚合教程
您可以在服务器手册的 完整聚合管道教程 部分找到详细解释常见聚合任务的教程。选择一个教程,然后从页面右上角的 Select your language 下拉菜单中选择 Node.js。
类比
聚合管道类似于汽车工厂的装配线。装配线设有配备专用工具的工位,用于执行特定任务。示例,在制造汽车时,装配线从框架开始。当车架在装配线上移动时,每个工位都组装一个单独的零件。最终产品即成品汽车。
聚合管道是装配线,聚合阶段是装配站,表达式操作符是专用工具,聚合结果是成品。
比较聚合与查找操作
下表列出了使用查找操作可以执行的不同任务,以及使用聚合操作可以实现的任务。聚合框架提供了扩展功能,允许您转换和操作数据。
查找操作 | 聚合操作 |
---|---|
Select certain documents to return Select which fields to return Sort the results Limit the results Count the results | Select certain documents to return Select which fields to return Sort the results Limit the results Count the results Group the results Rename fields Compute new fields Summarize data Connect and merge data sets |
服务器限制
执行聚合操作时要考虑以下限制:
返回的文档不得违反 BSON 文档大小限制(16 兆字节)。
默认下,管道阶段的内存限制为 100 MB。如果需要,您可以通过启用传递给
aggregate()
方法的AggregateOptions
对象的AllowDiskUse属性来超出此限制。
更多信息
要查看表达式操作符的完整列表,请参阅MongoDB Server手册中的聚合操作符。