我有一個用於餐廳的mongo db集合。 例如 {_id:uniquemongoid, 排名:3, 城市: '柏林' }mongodb的索引
餐廳是由城市上市,並下令按職級(整數) - 我應該在城市排名上創建索引,或城市/等級組合? (我按城市查詢並按排名排序)
此外,還有幾個布爾值域, {hasParking:true,familyFriendly:true} - 我應該創建索引來加速查詢這些過濾器嗎?複合指數?對我而言,我不清楚是否應該創建複合索引,因爲查詢只能有一個布爾集或更多的布爾值集。
這一切都取決於你有多少數據和你的查詢是什麼。 – Thilo
請注意,您可以使用光標的['explain()'方法](http://docs.mongodb.org/manual/reference/method/cursor.explain/)來檢查用於完成查詢的索引。因此,當您不確定給定索引是否有助於特定查詢時,您可以嘗試一下並檢查。 – Philipp
我的同事就此進行了一次演講:http://www.youtube.com/watch?v = AVNjqgf7zNw他使用mysql作爲示例,但適用相同的原則。也許它會幫助你設計你的索引。 – leif