Hovedformålet med aggregation framework
er at lette forespørgslen på et stort antal poster og generere et lavt antal resultater, der har værdi for dig.
Som du har sagt, kan du også bruge flere find
forespørgsler, men husk at du ikke kan oprette nye felter med find
forespørgsler. På den anden side er $group
fase giver dig mulighed for at definere dine nye felter.
Hvis du gerne vil opnå funktionaliteten af aggregation framework
, vil du højst sandsynligt skulle køre en indledende find
(eller sammenkæde flere), træk den information og manipuler den yderligere med et programmeringssprog.
aggregation pipeline
kan se ud til at tage længere tid, men i det mindste ved du, at du kun skal tage højde for ydeevnen af et system - MongoDB-motor.
Hvorimod, når det kommer til at manipulere de data, der returneres fra en find
forespørgsel, vil du højst sandsynligt skulle manipulere dataene yderligere med et programmeringssprog og dermed øge kompleksiteten afhængigt af forviklingerne i det valgte programmeringssprog.