Linkler sahip bir veya daha fazla etiket, bu etiketleri gömmek için doğal görünebilir ilk başta: MongoDB'de bu sorguları verimli bir şekilde nasıl uygularsınız?
link = { title: 'How would you implement these queries efficiently in MongoDB?'
url: 'http://stackoverflow.com/questions/3720972'
tags: ['ruby', 'mongodb', 'database-schema', 'database-design', 'nosql']}
Bunlar nasıl sorguları etkin bir şekilde uygulanacaktır ki?
- alın bağlantılar
- En popüler etiketleri alma "değer" etiketi içeren linkler alın,
yukarıdaki gibi MongoNY presentation dayanmaktadır bağlantıyı temsil etmek fikri (ilk 10 etiketleri veya bir etiket bulutu görüntülemek için) 38.
bir etiket için bir popülerlik alan eklemek için, etiketin doğru, ayrı bir koleksiyona eklenen veya taşınacak gerekir: Burada örneğidir? – randomguy
yapmanıza gerek yok, aynı koleksiyonda saklayabilir ve etikete işaret etmek için sadece bir dbref kullanabilirsiniz. Farklı bir koleksiyon, verilerinizi yönetmenizi kolaylaştıracaktır (bunu tavsiye ederim). – Asaf
Etiketler koleksiyonunda, etiket adını ayrı bir etiket alanı kullanmak yerine _id alanına koymanızı öneririz. Ayrıca, $ ini kullanmak yerine etiket başına bir güncelleme yapmayı düşünmüyorsanız, sorguyu yalnızca {_id: "tag_name"} yapabilir ve yeni etiket girişleri oluşturmak için upsert özelliğini kullanabilirsiniz. – mstearn