sql >> Database teknologi >  >> NoSQL >> MongoDB

Langsomt områdeforespørgsel på et multinøgleindeks

Fandt mit svar i dette spørgsmål:Rækkefølge på $lt og $gt i MongoDB-intervalforespørgsel

Mit indeks er et multikey-indeks (på tags ), og jeg kører en intervalforespørgsel (på post_time ). Tilsyneladende , MongoDB kan ikke bruge begge sider af området som et filter i dette tilfælde, så det vælger bare $gte klausul, som kommer først. Da min nedre grænse tilfældigvis er den laveste post_time værdi, begynder MongoDB at scanne alle objekterne.

Det er desværre ikke hele historien. For at løse problemet oprettede jeg også ikke-multikey-indekser, men MongoDB insisterede på at bruge det dårlige. Det fik mig til at tro, at problemet var et andet sted. Til sidst måtte jeg droppe multikey-indekset og oprette et uden tags Mark. Alt er fint nu.




  1. Lagring af System.Typ med MongoDb

  2. Mongo Giver 'duplicate key error' på ikke-unikke felter

  3. Hvordan håndhæves fremmednøgler i NoSql-databaser (MongoDB)?

  4. Mongodb Mongoimport for stor:Fejl ved parsing