1. MongoDB中的ObjectId是一个12字节BSON 类型数据,组成格式如下:
(1)前4个字节表示时间戳
(2)接下来的3个字节是机器标识码
(3)紧接的两个字节由进程id组成(PID)
(4)最后三个字节是随机数
2. MongoDB采用ObjectId,而不是其他比较常规的做法(比如自动增加的主键)的主要原因是因为在多个服务器上同步自动增加主键值既费力还费时。
3. 创建文档的时间戳
由于 ObjectId中存储了4 个字节的时间戳,所以你不需要为你的文档保存时间戳字段,你可以通过getTimestamp 函数来获取文档的创建时间:
ObjectId("5349b4ddd2781d08c09890f4").getTimestamp()
ObjectId转换为字符串:ObjectId("5349b4ddd2781d08c09890f4").str