如何使用 MongoDB API 从 Cosmos DB 中获取 N 个随机文档?

How do I get N random documents from Cosmos DB using the MongoDB API?

我正在使用 azure cosmos DB 作为 MongoDB 版本 4.0.0。我需要使用 MongoDB API 从 Azure Cosmos DB 获取 N 个随机文档。我试过使用 $sample 运算符,但每次查询时它都会以相同的顺序给我文档。

db.collectionName.aggregate([{$sample: {size: 1}}])

无论我 运行 这个查询多少次,我都会从集合中得到相同的文档。

我找不到任何关于$sample如何执行的文档,但我认为我们遇到的问题可能与提到的here有关。这意味着如果不满足某些条件,它将获取结果并对它们进行排序,然后 return 项目的大小计数。所以我们得到的总是一样的。我会尝试找到更多详细信息,任何进一步的发现都会更新。