gpt4 book ai didi

mongodb - 如何有效地加入 MongoDb 中的 2 个巨大集合?

转载 作者:行者123 更新时间:2023-12-04 00:44:51 31 4
gpt4 key购买 nike

我有两个巨大的(几十万条记录)集合 Col1Col2 ,我需要从它们两个中获取连接的数据。有一个连接标准可以让我将返回的记录数量显着减少到几百个,所以在 SQL 语言中我会运行类似

 SELECT ... FROM Col1 INNER JOIN Col2 ON Col1.field1 = Col2.field2

它会运行得非常快,因为 Col1.field1Col2.field2 是索引字段。是否有任何直接的方法或解决方法可以使用索引在 MongoDb 中快速执行相同的操作,而不是扫描所有项目?

注意:我无法重新设计集合以将它们合并为一个。

最佳答案

MongoDB 没有 JOIN,所以没有快速的等价物。这很可能是架构设计问题,但您说您无法更改它。您不能在一个查询中查询多个集合。

您可以在 2 个查询中执行连接客户端,也可以通过执行 map-reduce 并生成第三个集合以非实时样式执行此操作。

有关如何执行 map-reduce 的详细信息,请引用 this other question

关于mongodb - 如何有效地加入 MongoDb 中的 2 个巨大集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12557337/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com