鏈接具有一個或多個標籤,所以在一開始似乎自然地嵌入標籤:如何在MongoDB中有效地實現這些查詢?
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']}
如何將這些查詢能夠高效地實現?
- 包含一個或多個給定的標籤(用於搜索與特定標記的鏈接)
- 獲取所有標籤的列表,但不重複(搜索框自動完成)獲得鏈接
- 獲取最熱門的標籤(顯示頂部10的標籤或標籤雲)
到表示與上述是基於MongoNY presentation鏈路的想法,滑動38.
爲了增加人氣場的標籤,該標籤將需要添加或移動到一個單獨的收集,正確嗎? – randomguy 2010-09-15 19:29:53
你不需要,你可以將它保存在同一個集合中,只需使用dbref指向標籤。一個不同的集合會讓你更簡單地管理你的數據(這是我推薦的)。 – Asaf 2010-09-15 19:38:29
在標籤集合中,我建議將標籤名稱放在_id字段中,而不是使用單獨的標籤字段。另外,如果您不介意爲每個標記執行一次更新而不是使用$ in,則可以僅查詢{_id:「tag_name」}並使用upsert功能創建新的標記條目。 – mstearn 2010-09-15 20:19:31