如何将大量聚合的结果传送到可写流? (nodejs)

问题描述 投票:0回答:1

如果限制为1000个项目,我的聚合工作量很大(即使使用allowDiskUse:true也行得通。)>

我需要将此聚合通过管道传输到另一个流。但是,结果中将超过1页。目前,我只能通过管道传输第一页(跳过= 0,限制= 1000),效果很好

是否有任何简单的方法? getMore对于聚合游标似乎不起作用?

谢谢

我有一个繁重的聚合,如果它限制为1000个项目,则只能很好地工作(即使使用allowDiskUse:true)。我需要将该聚合管道传输到另一个流。但是将会有多个... ...

node.js mongodb
1个回答
0
投票

Mongoose和原生MongoDB NodeJS驱动程序均将查询公开为异步迭代器。可以使用> = 12.0上的内置Readable.from或旧版本上的第三方库将异步迭代器转换为NodeJS流。

以下代码段说明了如何将Mongoose聚合查询转换为可通过其他方式进行管道传输的可读流。

© www.soinside.com 2019 - 2024. All rights reserved.