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

Prestazioni di aggregazione di ricerca scadenti

da https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/

outsideField Specifica il campo dai documenti in fromcollection. $lookup esegue una corrispondenza di uguaglianza su ForeignField al campo locale dai documenti di input. Se un documento in fromcollection non contiene il campo straniero, $lookup tratta il valore come null ai fini della corrispondenza.

Questo verrà eseguito come qualsiasi altra query.

Se non si dispone di un indice nel campo _AccountId, verrà eseguita una query completa su tablecan per ciascuno dei 10.000 post. La maggior parte del tempo verrà speso in quel tablecan.

db.users.ensureIndex("_AccountId", 1) 

accelera il processo in modo da eseguire 10.000 accessi all'indice invece di 10.000 scansioni di tabelle.