Una solución mucho mejor sería dejar el _id columna tal como está y tener un ID de usuario separado y ID de carpeta campos en su documento, o cree un campo separado con ambos combinados.
En cuanto a si será "tan rápido" ... depende de su consulta, pero para ordenar por fecha de "creación" del documento, por ejemplo, perdería la capacidad de ordenar simplemente por el _id también perdería los beneficios de fragmentación y distribución .
Sin embargo, si desea utilizar ambos ID para su _id hay otra opción...
De hecho, puedes usar ambos pero déjalos separados ... por ejemplo, este es un _id válido :
> 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"
}
>