インデックスは、実際にはクエリがどのように見えるかに依存する必要があります。メッセージクエリが次のようになっているとします。
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});
次に、このクエリ専用のメッセージコレクションにインデックスを作成する必要があります。この場合:
db.Message.createIndex({_p_chatRoom:1, _p_user:1, isSeen: -1, _created_at: -1})
または、チャットルームだけのインデックスは、インデックスがまったくない場合よりもはるかに優れたパフォーマンスを発揮します
db.Message.createIndex({_p_chatRoom:1})
構築するインデックスを実際に理解するには、Mongoドキュメント https://docs.mongodb.com/manual/reference/method/db.collection.createIndex/#db.collection.createIndex
私はParseMongoDBに個人的にMLabを使用しています。これは、データベースについてあまり知識がなく、実際には、アプリケーションの一般的なクエリに基づいてインデックスを推奨する低速のクエリアナライザーを備えているため、より細かい点を学びたくない場合はMongoDBインデックス作成の場合、MLabは開始するのに最適な場所です