Uw index zou eigenlijk moeten afhangen van hoe uw zoekopdracht eruitziet. Stel dat uw berichtvraag er als volgt uitziet:
var query = new Parse.Query("Message");
query.equalTo("chatRoom", aChatRoom);
query.equalTo("user", someUser);
query.equalTo("isSeen", false);
query.descending("createdAt");
query.find().then(function(results){//whatever});
Dan zou u specifiek voor deze query een index op de berichtenverzameling moeten bouwen. In dit geval:
db.Message.createIndex({_p_chatRoom:1, _p_user:1, isSeen: -1, _created_at: -1})
Als alternatief zal een index met alleen de chatroom veel beter presteren dan helemaal geen index
db.Message.createIndex({_p_chatRoom:1})
Om echt te begrijpen welke indexen je moet bouwen, moet je wat lezen in de Mongo-documenten https://docs.mongodb.com/manual/reference/method/db.collection.createIndex/#db.collection.createIndex
Ik gebruik persoonlijk MLab voor mijn Parse MongoDB, omdat ik niet erg veel kennis heb van databases, en ze hebben eigenlijk een langzame query-analysator die indexen aanbeveelt op basis van veelvoorkomende zoekopdrachten in uw toepassing, dus als u de fijnere punten niet wilt leren van MongoDB-indexering, dan is MLab een geweldige plek om te beginnen