一个针对于顾客和其多个地址关系建模的一个例子
分别使用规范化(引用)和非规范化(内嵌)存储:
1、规范化存储:
(在一个规范化的数据模型中, address 文档包含一个对父文档 patron 的引用):
[html]
- {
- _id: "joe",
- name: "Joe Bookreader"
- }
- {
- patron_id: "joe",
- street: "123 Fake Street",
- city: "Faketon",
- state: "MA",
- zip: "12345"
- }
- {
- patron_id: "joe",
- street: "1 Some Other Street",
- city: "Boston",
- state: "MA",
- zip: "12345"
- }
2、非规范化存储:
(把 address 数据直接内嵌到 patron 文档里面)
[html]
- {
- _id: "joe",
- name: "Joe Bookreader",
- addresses: [
- {
- street: "123 Fake Street",
- city: "Faketon",
- state: "MA",
- zip: "12345"
- },
- {
- street: "1 Some Other Street",
- city: "Boston",
- state: "MA",
- zip: "12345"
- }
- ]
- }