MongoDB默认_id字段

一、_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是唯一的】

相关推荐
葫芦和十三9 小时前
图解 MongoDB 03|CRUD 全链路:一条 find 怎么穿过 WiredTiger
后端·mongodb·agent
葫芦和十三17 小时前
图解 MongoDB 04|索引模型:每建一个索引,就是在 B+-tree 森林里多栽一棵
后端·mongodb·agent
葫芦和十三2 天前
图解 MongoDB 02|BSON:你以为存的是 JSON,其实是带类型的二进制
后端·mongodb·agent
葫芦和十三2 天前
图解 MongoDB 01|文档数据库
后端·mongodb·agent
倔强的石头_2 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
冬奇Lab3 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
ClouGence3 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
无响应de神3 天前
三、用户与权限管理
数据库·mysql
✎ ﹏梦醒͜ღ҉繁华落℘4 天前
单片机基础知识---stm32单片机的优先级
stm32·单片机·mongodb
麦聪聊数据4 天前
数据服务化时代:企业数据能力输出的核心路径
数据库