知识点

软件工具

相关文章

更多

最近更新

更多

MongoDB _id和ObjectId详解

2019-03-15 21:49|来源: 网路

在创建一个文档的时候,会生成一个_id,id的默认类型是ObjectId,如:
> db.blog.findOne()
{
   "_id" : ObjectId("5755448bfceaa7879cd4d48f"),
   "title" : "领悟书生",
   "content" : "这是一个分享教程的网站",
   "date" : ISODate("2016-06-06T09:38:08.995Z")
}


ObjectId的生成规则

   4字节:UNIX时间戳
   3字节: 这三个字节是所在主机的唯一标识符,一般是机器主机名的散列值,这样就确保了不同主机生成不同的机器hash值,确保在分布式中不造成冲突,这也就是在同一台机器生成的objectid中间的字符串都是一模一样的原因
   2字节:表示生成此_id的进程,确保 同一台机器不同的mongodb进程产生了objectid不冲突

   3字节:由一个随机数开始的计数器生成的值,确保在同一秒内产生的objectid也不会出现冲突



相关问答

更多