Как оптимизировать наш агрегат mongoDB? - PullRequest
0 голосов
/ 02 июля 2019

Мы пытаемся ускорить один из наших агрегатов mongoDB.Все наши коллекции являются историческими (мы не обновляем, просто получаем последнюю запись на основе идентификатора)

Тем не менее, она замедляется примерно до 2500 записей (50 секунд).

Какможно ли его улучшить?

У всех коллекций уже есть индексы, которые используются в агрегатах поиска.

Это сводка нашего агрегата.

db.table.aggregate([{
    $match: {
        $and: [ attributes based on unique ids ]
    }
},
{
    $group: {
        30 fields
    }
}
{
    $match: {
        $and: [ attributes based on 30 fields ]
    }
},
{
    $lookup: {
        x6 (all with pipelines)
    }
},
{
    $project: {
        30 fields,
        arrayElemAt 0 lookups 
    }
}
{
    $match: {
        $and: [ attributes based on lookups ]
    }
}])

Это так?можно иметь время отклика около 5-10 секунд?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...