Für die erste Frage, ja, können Sie Aggregate erklären.
db.collection.runCommand("aggregate", {pipeline: YOUR_PIPELINE, explain: true})
Für die zweite, die Indizes Sie die Bereichsabfragen zu optimieren erstellen gilt auch für die $ Spiel Stufe der Aggregation-Pipeline, wenn sie am Anfang der Pipeline auftreten. Sie haben also Recht, sich auf Indexoptimierungen zu konzentrieren.
Siehe Pipeline Operators and Indexes.
aktualisieren 2
Mehr über Aggregat und erklären: auf Version 2.4 ist es unzuverlässig; auf 2.6+ bietet es keine Abfrageausführungsdaten. https://groups.google.com/forum/#!topic/mongodb-user/2LzAkyaNqe0
aktualisieren 1
Transcript einer Aggregation erklären auf MongoDB 2.4.5.
$ mongo so
MongoDB shell version: 2.4.5
connecting to: so
> db.q19329239.runCommand("aggregate", {pipeline: [{$group: {_id: '$user.id', hits: {$sum: 1}}}, {$match: {hits: {$gt: 10}}}], explain: true})
{
"serverPipeline" : [
{
"query" : {
},
"projection" : {
"user.id" : 1,
"_id" : 0
},
"cursor" : {
"cursor" : "BasicCursor",
"isMultiKey" : false,
"n" : 1031,
"nscannedObjects" : 1031,
"nscanned" : 1031,
"nscannedObjectsAllPlans" : 1031,
"nscannedAllPlans" : 1031,
"scanAndOrder" : false,
"indexOnly" : false,
"nYields" : 0,
"nChunkSkips" : 0,
"millis" : 0,
"indexBounds" : {
},
"allPlans" : [
{
"cursor" : "BasicCursor",
"n" : 1031,
"nscannedObjects" : 1031,
"nscanned" : 1031,
"indexBounds" : {
}
}
],
"server" : "ficrm-rafa.local:27017"
}
},
{
"$group" : {
"_id" : "$user.id",
"hits" : {
"$sum" : {
"$const" : 1
}
}
}
},
{
"$match" : {
"hits" : {
"$gt" : 10
}
}
}
],
"ok" : 1
}
Serverversion.
$ mongo so
MongoDB shell version: 2.4.5
connecting to: so
> db.version()
2.4.5
Es ist in den neuesten instabil: https://jira.mongodb.org/browse/SERVER-4504 aber bis dahin nicht, und nicht dort keine Indizes ist die Verwendung über die mathc als solcher Index optimsation nicht ist ein guter Weg – Sammaye
@Sammaye, das ist falsch, Spiel verwendet sicherlich Indexe wie Sortieren. –
@AsyaKamsky Das ist, was ich gerade gesagt habe, sagte ich tatsächlich Vergangenheit das Spiel, d. H. In der $ Gruppe – Sammaye