Store _Id as object or string in MongoDB?
Performance for requests (and updates) are really better with objectid. More over, objectid are quite small in space.
From the official doc :
BSON includes a binary data datatype for storing byte arrays. Using this will make the id values, and their respective keys in the _id index, twice as small.
here are 2 links that can help you : - http://www.mongodb.org/display/DOCS/Optimizing+Object+IDs- http://www.mongodb.org/display/DOCS/Object+IDs
When you use ObjectId
, it generates _id
as a unique value in all your computers. So if you use Sharding, you will not worry about you _id
conflicts. See how ObjectId generates in specification
But if you use string, you should generate it carefully.