Mongodb $ или занимает больше времени для нескольких условий - PullRequest
0 голосов
/ 30 апреля 2019

У меня проблема с оператором monogdb $ или оператором.

step1: выборка entityID, мнемоники и версии из коллекции "entity"

step2: Затем выборка данных из коллекции "equityDataMnemonicAggregator" для этих деталей "сущностей".

Здесь я использую $ или для сопоставления записей. Для меньших данных это не создает проблемы. Но из коллекции «сущностей» я получаю более 2000 записей, это может быть 11 тыс. Если я передаю эти многочисленные условия в $ или это занимает более 2 минут, даже если я выполняю индексирование для entityID, мнемоники и версии в «equityDataMnemonicAggregator». \

Примечание. Я использую AWS-шлюз для реализации API, и он выдает ошибку времени ожидания через 30 с.

Запрос:

let queryList = [{
        "entityID": "18571",
        "mnemonic": "equityanalyst",
        "version": 7
      },{
        "entityID": "18571",
        "mnemonic": "insideractivity",
        "version": 11
      }]

db.getCollection('equityDataMnemonicAggregator').find({"$or": queryList})

Здесь queryList содержит две записи, это может быть 2k или 11k. Как я могу оптимизировать этот запрос? У меня есть другой оператор, чтобы сделать это!

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