MongoDB 技术深度解析:数据操作、事务处理与查询技巧
1. MongoDB 数据基础操作
MongoDB 中的数据以 BSON 格式存储,这种格式使得数据遍历变得简单。前 4 个字节存储了数据的大小,因此可以在不解析数据的情况下轻松跳过对象。对于嵌入式数据,由于知道其大小,也能方便地跳过。
在操作嵌入式文档时,MongoDB 会计算偏移量来定位。当对嵌入式对象进行数据更改或添加时,无需将整个对象写回磁盘,只需更新 BSON 文档及其数据长度,这种方式高效且简洁。
每个文档都有一个唯一的 ObjectId,它是一个 12 字节的二进制值,默认存储在 _id 字段中。ObjectId 的前 4 个字节表示自纪元以来的时间(以秒为单位),最后 3 个字节是计数器。即使在同一时刻插入两个文档,计数器的值也会递增,从而保证了较高的唯一性概率。
文档以 BSON 格式存储,最大大小为 16 MB。若需存储大于 16 MB 的文档,如视频,建议使用 GridFS。文档类似于记录,存储在集合中,集合类似于数据库表。同一集合中的文档结构通常相似,但并非强制要求,这体现了 NoSQL 或“无模式”数据库的特点。
集合可以有作用域或命名空间,例如可以有一个名为 rack 的集合,其中包含 shelves 和 panels 等子集合。
2. 特殊集合与日期处理
Capped 集合是一种固定数量文档的集合,可看作是一个“队列”,当达到上限时会丢弃最旧的元素,常用于日志记录。创建 Capped 集合的示例代码如下:
Db.crea
超级会员免费看
订阅专栏 解锁全文
1236

被折叠的 条评论
为什么被折叠?



