对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。
Docs 菜单

支持的聚合管道阶段和操作符

本页介绍 Atlas Data Federation 支持的 MongoDB 聚合管道阶段操作符

注意

默认下,对于 S3 数据存储的 Data Federation 查询, Atlas Data Federation不会以任何特定顺序返回文档。 Atlas Data Federation会并发读取分区,根本的存储响应顺序决定了Atlas Data Federation首先返回哪些文档,除非您在查询中使用 $sort 来定义顺序。示例,如果运行同一 findOne()查询两次,则可能会看到不同的文档;如果使用 $skip,则在查询中未使用 $sort 的情况下,可能会跳过不同的文档。

Atlas Data Federation支持所有聚合管道阶段,但以下阶段除外:

对于Atlas Data Federation查询的以下阶段, Atlas Data Federation引入了备用语法,包括警告或偏离服务器 。 有关详细信息,请参阅描述列。

管道阶段
说明

按指定的_id表达式对输入文档进行分组,并为每个不同的分组输出一个文档。 Atlas Data Federation不支持累加器字段的空string键。

示例,支持以下内容:

{
"$group" : {
"_id" : "$representationType",
"" : {
"$sum" : NumberInt(1)
}
}
}

对同一数据库中的集合执行左外连接。Atlas Data Federation还提供用于连接来自不同数据库的集合的语法。有关更多信息,请参阅 $lookup 阶段 (Atlas Data Federation)

Writes the results of the aggregation pipeline to a specified collection. Atlas Data Federation provides alternate syntax for the required into field to allow writes to an Atlas cluster. To learn more, see $merge Stage (Atlas Data Federation).

获取聚合管道返回的文档并将它们写入指定的集合。 Atlas Data Federation提供用于写入 S3 和Atlas 集群的备用语法。

要使用 $out写入同一Atlas 集群上不同数据库中的集合,您的Atlas 集群必须使用MongoDB版本.7 0或更高版本。

有关更多信息,请参阅 $out

从其输入中随机选择指定数量的文档。 Atlas Data Federation支持$sample ,但不提供真正随机的示例,并返回其找到的第一设立文档。

跳过进入该阶段的指定数量的文档,并将剩余文档传递到管道中的下一阶段。 Atlas Data Federation支持$skip ,但这并不能减少数据扫描,因为Data Federation会访问与您的查询相对应的所有分区。

Atlas Data Federation支持所有聚合管道操作符。但是,某些操作符仅适用于对映射到Atlas 集群数据存储的集合进行查询。地理空间查询操作符仅在此类查询中可用。以下评估查询操作符也仅限于对映射到Atlas 集群数据存储的集合进行查询:

管道阶段
说明

按距离指定点最近到最远的顺序输出文档。 Atlas Data Federation支持在对映射到一个或多个Atlas集合的虚拟集合进行查询时使用 $geoNear Atlas Data Federation不支持将 $geoNear 用于 S3 或HTTP联合数据库实例存储。

有关更多信息,请参阅在Atlas集群中查询数据

对集合执行递归搜索。 Atlas Data Federation支持在对仅映射到一个Atlas集合的虚拟集合的查询中使用 。$graphLookup$graphLookup Atlas Data Federation不支持 :

  • S3 或HTTP存储。

  • 对映射到多个Atlas集合的虚拟集合进行查询。

有关更多信息,请参阅在Atlas集群中查询数据

对MongoDB Search索引涵盖的字段内容执行全文搜索。

对使用文本索引建立索引的字段内容执行文本搜索。

string将包含JavaScript 表达式的 或完整的JavaScript 函数传递给查询系统。

注意

Atlas Data Federation不包含服务器端JavaScript引擎。因此, Atlas Data Federation不支持 、$where $function$accumulator 等需要启用服务器端脚本的操作符。

给本页内容打分