一、_id字段的含义及用途
插入MongoDB表数据的每一条文档, 都应该有一个唯一标识,去区分每一条文档。
即每一张表都要有对应的主键(可以指定,不指定时MongoDB默认主键是_id),为指定主键时,在每一条文档被插入到集合后,MongoDB都会自动增加主键,MongoDB中文档主键的名称叫做 _id
二、_id数据类型及长度
_id的数据类型是ObjectId。ObjectId是轻量型的,不同的机器都能全局唯一的生成它;
ObjectId的长度为12字节(24位):
0-3字节: 表示时间戳
4-6字节: 表示主机的唯一标识符。【确保不同主机生成的ObjectId是唯一的】
7-8字节: 表示进程id。【确保同一机器上并发的多个进程产生的ObjectId是唯一的】
9-11字节:表示计数器。【确保同一机器上同一进程同一秒产生的ObjectId是唯一的】