У меня есть простой запрос, подобный этому: {"field": {$nin: ["value1","value2","valueN"]}}
.
Проблема в том, что необходимо исключить большое количество уникальных значений (используя оператор $nin
). Это около 50000 уникальных значений для фильтрации и около 1 КБ длины запроса.
Вопрос : Существует ли элегантный и производительный способ выполнения таких операций?
Пример . Коллекция daily_stat
с 56M документов. Каждый день коллекция увеличивается на 100 тыс. Документов. Пример документа
{
"day": "2020-04-15",
"username": "uniq_name",
"total": 12345
}
Я запускаю следующий запрос:
{
"date": "2020-04-15",
"username": {
$nin: [
"name1",
"name2",
"...",
"name50000"
]
}
}
Версия MongoDB: 3.6.12