Много по-добро решение би било да оставите _id колона такава, каквато е, и имат отделен userId и folderId полета във вашия документ или създайте отделно поле с комбинирането на двете.
Що се отнася до това дали ще бъде „толкова бързо“ ... зависи от вашата заявка, но за подреждане по дата на „създаване“ на документа например ще загубите възможността просто да подреждате по _id ще загубите и предимствата за шардинг и разпространение .
Ако обаче искате да използвате и двата идентификатора за вашия _id има още една опция...
Всъщност можете да използвате и двете но ги оставете отделно ... например това е валиден _id :
> var doc = { "_id" : { "userID" : 12345, "folderID" : 5152 },
"field1" : "test", "field2" : "foo" };
> db.crazy.save(doc);
> db.crazy.findOne();
{
"_id" : {
"userID" : 12345,
"folderID" : 5152
},
"field1" : "test",
"field2" : "foo"
}
>