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

相关推荐
在努力的韩小豪1 分钟前
B树和B+树的区别(B Tree & B+ Tree)
数据结构·数据库·b树·b+树·索引·数据库索引
Watink Cpper12 分钟前
[MySQL初阶]MySQL(8)索引机制:下
android·数据库·b树·mysql·b+树·myisam·innodedb
freejackman30 分钟前
MySQL 基础入门
数据库·后端·sql·mysql
二年级程序员1 小时前
SQL语句(一)—— DDL
数据库·sql·mysql
邴越1 小时前
不同向量数据库(FAISS / Pinecone / Weaviate)在 RAG 中的优缺点
数据库·faiss
Allen Bright1 小时前
【MySQL基础-21】MySQL事务机制详解:原理、实现与最佳实践
数据库·mysql
movie__movie1 小时前
Spring AI MCP 客户端实战:轻松连接高德地图等工具
数据库·人工智能·spring
清风19811 小时前
kafka消息可靠性传输语义
数据库·分布式·kafka
数据智能老司机3 小时前
CockroachDB权威指南——SQL调优
数据库·分布式·架构
数据智能老司机4 小时前
CockroachDB权威指南——应用设计与实现
数据库·分布式·架构