我有以下的文獻模式在mongoose2.4.8上node0.4.12運行的數組屬性:我可以定義在文檔架構指數以mongoose.js
var UserSchema = new Schema({
following: [{type: ObjectId, ref: 'User'}],
followers: [{type: ObjectId, ref: 'User'}]
});
我想加快在查找這些陣列。我可以使用mongoose.js索引功能嗎?如何?
我有以下的文獻模式在mongoose2.4.8上node0.4.12運行的數組屬性:我可以定義在文檔架構指數以mongoose.js
var UserSchema = new Schema({
following: [{type: ObjectId, ref: 'User'}],
followers: [{type: ObjectId, ref: 'User'}]
});
我想加快在查找這些陣列。我可以使用mongoose.js索引功能嗎?如何?
你想查找數組中的ObjectId嗎?或者你在尋找用戶?如果是後者,請在用戶架構上添加索引。
我試圖查找數組中的ObjectIds。但是我所追求的功能是儘可能快地尋找追隨者/追隨用戶 – 2011-12-29 20:35:04
在這種情況下,您不希望在那裏添加索引,因爲這樣做會使數組中的ObjectIds而不是用戶更快地搜索。默認情況下,索引已經被添加到模式的'_id'字段,所以你甚至不需要自己添加它。 – fent 2011-12-30 01:40:24
@DeaDEnD我想要做的是找到用戶x是否跟隨用戶y。這意味着要在任何一個數組中進行查找。如果爲以下功能專門定義另一個模式,它會更快:類似於:'var FollowerSchema = new Schema({follower:{type:ObjectId,ref:'User',index:true},{type:ObjectId,ref :'User',index:true}});' – 2011-12-28 11:46:23