| 内嵌 | 读取一次到位、原子更新限于单文档;适合量级可预期、随主体生命周期存在的数据 |
|---|---|
| 引用 | 通过关联字段查询,需应用层 join 或 lookup;适合独立实体与多对多 |
| 单文档上限 | MongoDB 单文档 16MB,数组过大触发搬迁与写放大 |
示例
示例
// 内嵌:地址随用户生命周期存在,读用户即得
{ _id: 1, name: "ann", addresses: [ { city: "hz", zip: "310000" } ] }
// 引用:订单量无界,独立集合 + 外键字段
// orders: { _id: 1001, userId: 1, items: [ { sku: "a", qty: 2 } ] }判断标准是查询模式与增长边界:读多写少、数量可控的内嵌;写多、数量无界、被多处引用的拆出去。