Ich habe MongoDB Sammlung mit 50k + Dokumente wie:Was ist der beste Weg, um die Suche in MongoDB mit mehreren Indizes zu beschleunigen?
{
"_id" : ObjectId("5a42190e806c3210acd3fa82"),
"start_time" : ISODate("2017-12-25T02:29:00.000Z"),
"system" : "GL",
"region" : "NY",
"order_id" : 3,
"task_type" : "px2",
"status" : false
}
Wenn ich einen neuen Auftrag, Skript sucht Datenbank Python hinzufügen für bestehende Aufträge mit derselben START_TIME und task_type, wie:
tasks_base.find_one({
"$and": [{
"start_time": plan_date.astimezone(pytz.UTC)
}, {
"task_type": px
}]
})
Es funktioniert , aber jedes neue Dokument in einer Sammlung verlangsamt es (mehr zu überprüfende Dokumente usw.). Als Lösung möchte ich task_type
und start_time
als Indizes für die Sammlung hinzufügen. Aber haben Sie einige Bedenken (Datum als Index sieht ein bisschen unnatürlich aus). Also, brauche einen Rat, wie man es richtig macht (oder zusätzliche Ideen, wie man die Suche beschleunigt). Für jeden Hinweis dankbar :)