MongoDB聚合指的是什么
admin
2023-04-12 00:42:52
0

MongoDB聚合介绍

聚合是处理数据记录和返回计算结果的操作。MongoDB提供了丰富的聚合操作集合,以对数据集检测和实施计算。在mongod实例上运行数据集合,简化了应用代码,限制了资源的使用。

像查询一样,在MongoDB中聚合操作使用文档的集合作为输入,以一个或多个文档的形式返回结果。

聚合方式

聚合管道

MongoDB 2.2引入了一个新的聚合框架,以数据处理管道为主题建模。文档进入多级管道,转换为一个聚合结果。

最基本管道级提供像查询操作的过滤,和文档转换以修改输出文档的形式。

其他管道操作通过指定一个或多个字段提供分组和排序文档的工具,以及聚合包含文档的数组的内容的工具。此外,管道级可以对任务使用像计算平均数或连接字符串的操作符。

在MongoDB中管道使用本地操作提供有效的数据聚合,是数据聚合的更好方式。

MongoDB聚合指的是什么

Map-Reduce

MongoDB也提供了map-reduce操作来实施聚合。通常,map-reduce操作有两个阶段:map阶段处理每个文档,对于每个输入文档输出一个或多个对象;reduce阶段组合map操作的输出。可选的,map-reduce可以有一个finalize级,以对结果做最后的修改。像其他聚合操作,map-reduce可以指定一个查询条件来查询输入文档以及排序和限制结果。

Map-reduce使用客户端JavaScript函数来实施map和reduce操作,以及可选的finalize操作。而客户端JavaScript相对聚合管道提供更大的伸缩性,通常,map-reduce更低效,比聚合管道更复杂。

注意:

从MongoDB 2.4开始,某些mongo shell功能和属性在map-reduce操作中不可访问。MongoDB 2.4也提供了在相同时间运行多个JavaScript操作的支持。在MongoDB 2.4之前,JavaScript代码以单线程执行,导致了map-reduce的并行问题。

MongoDB聚合指的是什么

单一目的聚合操作

对于大量的普通单一目的聚合操作,MongoDB提供了特定目的的数据库命令。这些普通的聚合操作是:返回匹配文档的记录数,返回一个字段的不通值,基于一个字段值分组数据。所有这些操作从一个单一集合聚合文档。而这些操作提供普通聚合处理的单一访问,它们缺乏聚合管道和map-reduce的伸缩性和扩展性。

MongoDB聚合指的是什么

相关内容

热门资讯

【第一消息】“飞鹰炸/金/花怎... 网上科普关于“飞鹰炸/金/花有没有挂”话题很是火热,小编也是针对飞鹰炸/金/花作*弊开挂的方法以及开...
最新引进“胡乐麻将到底是不是挂... 有 亲,根据资深记者爆料胡乐麻将是可以开挂的,确实有挂(咨询软件无需打开...
【第一财经】“开心安徽比鸡有没... 家人们!今天小编来为大家解答开心安徽比鸡透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪里...
终于懂了“新起点可以开挂吗?”... 终于懂了“新起点可以开挂吗?”(太坑了原来有挂)您好,新起点这个游戏其实有挂的,确实是有挂的,需要了...
【第一财经】“昆明文山麻将有挂... 网上科普关于“昆明文山麻将有没有挂”话题很是火热,小编也是针对昆明文山麻将作*弊开挂的方法以及开挂对...
【第一财经】“竞技圈究竟有挂吗... 网上科普关于“竞技圈有没有挂”话题很是火热,小编也是针对竞技圈作*弊开挂的方法以及开挂对应的知识点,...
最新引进“新青鸟大厅拼三张怎么... 网上科普关于“新青鸟大厅拼三张有没有挂”话题很是火热,小编也是针对新青鸟大厅拼三张作*弊开挂的方法以...
最新引进“新青鸟拼三张开挂器?... 最新引进“新青鸟拼三张开挂器?”(详细开挂教程)您好,新青鸟拼三张这个游戏其实有挂的,确实是有挂的,...
今日重磅消息“胡乐晋中麻将究竟... 今日重磅消息“胡乐晋中麻将究竟有挂吗?”(外卦神器下载)您好,胡乐晋中麻将这个游戏其实有挂的,确实是...
【第一财经】“小南长牌有没有挂... 家人们!今天小编来为大家解答小南长牌透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪里买很...