Leider erwähnt das MongoDB-Handbuch derzeit keine mögliche Indexnutzung für $lookup
, aber das ist definitiv der Fall.
Ein einfaches $lookup
Eine ähnliche Abfrage wie in Ihrem Beispiel führt eine Gleichheitsübereinstimmung für foreignField
durch in einer anderen Sammlung, also haben Sie den richtigen Index hinzugefügt, um die Leistung zu verbessern (vorausgesetzt, dieses Feld ist auch einigermaßen selektiv).
Wie bei MongoDB 4.0 die Indexnutzung für $lookup
wird nicht in Aggregation Explain-Ausgabe
. Es gibt ein relevantes Problem, das im MongoDB Issue Tracker beobachtet/aufgewertet werden sollte:SERVER-22622:Improve $ Lookup Explain, um den Abfrageplan für die "From"-Sammlung anzugeben
.