sql >> Databasteknik >  >> NoSQL >> MongoDB

Dålig uppslagsaggregationsprestanda

från https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/

outsideField Anger fältet från dokumenten i fromcollection. $lookup utför en jämställdhetsmatchning på outsideField till det lokala fältet från inmatningsdokumenten. Om ett dokument i fromcollection inte innehåller främmande fält, behandlar $lookup värdet som null för matchningsändamål.

Detta kommer att utföras på samma sätt som alla andra frågor.

Om du inte har ett index i fältet _AccountId kommer det att göra en fullständig tabellsökning för vart och ett av de 10 000 inläggen. Större delen av tiden kommer att spenderas i den tabellskanningen.

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

påskyndar processen så att den gör 10 000 indexträffar istället för 10 000 tabellskanningar.



  1. Aggregerande i lokal tidszon i mongodb

  2. Hur släpper man en databas med Mongoose?

  3. Mongoose lovar dokumentation säger att frågor inte är löften?

  4. HBase Prestandatestning med YCSB