sql >> Databáze >  >> NoSQL >> MongoDB

Indexování MongoDB pro aplikaci Parse Server

Váš index by měl ve skutečnosti záviset na tom, jak váš dotaz vypadá. Předpokládejme, že váš dotaz na zprávu vypadá takto:

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});

Pak byste museli vytvořit index na kolekci zpráv speciálně pro tento dotaz. V tomto případě:

db.Message.createIndex({_p_chatRoom:1, _p_user:1, isSeen: -1, _created_at: -1})

Alternativně bude index pouze s chatovací místností fungovat mnohem lépe než žádný index

db.Message.createIndex({_p_chatRoom:1})

Abyste skutečně pochopili, které indexy je třeba sestavit, budete si muset přečíst dokument Mongo https://docs.mongodb.com/manual/reference/method/db.collection.createIndex/#db.collection.createIndex

Osobně používám MLab pro svůj Parse MongoDB, protože se v databázích příliš nevyznám a ve skutečnosti mají pomalý analyzátor dotazů, který doporučuje indexy na základě běžných dotazů ve vaší aplikaci, takže pokud se nechcete učit jemnější body indexování MongoDB, pak je MLab skvělým místem pro začátek




  1. Jak nastavím výchozí hodnotu celého čísla v mongodb?

  2. Jak dynamicky vytvořit schéma mongoose?

  3. Provádějí se zálohy mongodb automaticky?

  4. Proč moje MongooseJS ObjectId neprojde testem rovnosti?