MongoDB Unwind需要太多时间

时间:2019-09-21 16:06:06

标签: mongodb aggregation-framework left-join query-performance

我在MongoDB中有一个包含数百万个文档的集合。 一旦创建,它们将是只读的。 docs:{_id:xxx,name:'John',..},...

我正在使用另一个集合来维护文档的关键字 可以在文档中附加或删除关键字。 keyc:{_id:xxx,...,关键字:[“ key1”,...“ keyN”]},..

我想要所有没有特定关键字的文档的列表。 为此,我在文档集合的聚合查询中使用查找。


$lookup : {
      from: 'keyc',
      localField: '_id',
      foreignField: '_id',
      as: 'keys'
    }

添加展开阶段时:


    $unwind : {
      path: '$keys',
      preserveNullAndEmptyArrays: true
    }

此查询耗时超过5分钟(约480秒)。

此时我的键集合为空(preserveNullAndEmptyArrays的真或假没有区别)。

无论如何,这是否可以优化?

0 个答案:

没有答案