Docs 菜单

Docs 主页开发应用程序MongoDB Manual

Realm 数据模型设计

在此页面上

  • 嵌入式数据模型
  • 规范化Realm 数据模型
  • 深入阅读

有效的数据模型支持您的应用程序需求。文档结构的关键考量是决定是嵌入还是使用引用。

借助 MongoDB,您可将相关数据嵌入到单个结构或文档中。这些模式通常被称为“非规范化”模型,且可利用 MongoDB 的丰富文档。以下方的图表为例:

具有包含所有相关信息的嵌入式字段的数据模型。

嵌入式数据模型允许应用程序将相关信息存储在同一数据库记录中。因此,应用程序完成常见操作所需要进行的查询和更新可能更少。

一般来说,在以下情况下使用嵌入式Realm 数据模型:

一般来说,嵌入为读取操作提供了更好的性能,以及在单个数据库操作中请求和检索相关数据的能力。嵌入式数据模型支持通过单次原子写入操作更新相关数据。

要访问嵌入式文档中的数据,请使用点表示法“进入”嵌入式文档。有关访问数组和嵌入式文档中数据的更多示例,请参阅查询数组中的数据查询嵌入式文档中的数据

MongoDB 中的文档必须小于最大 BSON 文档大小。

对于批量二进制数据,请考虑使用 GridFS。

规范化Realm 数据模型使用文档之间的引用来描述关系。

使用引用链接文档的数据模型。“联系”文档和“访问”文档都包含对“用户”文档的引用。

一般来说,使用规范化的 Realm 数据模型:

  • 当内嵌会导致数据重复,但无法提供足够的读取性能优势来抵消重复的不利影响时。

  • 来表示更复杂的多对多关系。

  • 对大型分层数据集进行建模。

为了连接集合,MongoDB 提供了聚合阶段:

MongoDB 还提供对跨集合连接数据的引用。

有关规范化数据模型的示例,请参阅使用文档引用对一对多关系进行建模。

有关各种树模型的示例,请参阅对树结构进行建模。

有关使用 MongoDB 进行数据建模的更多信息,请下载MongoDB 应用程序现代化指南

下载内容包括以下资源:

  • 介绍使用 MongoDB 进行数据建模的方法

  • 白皮书介绍了从 RDBMS 数据模型迁移到 MongoDB 的最佳实践和注意事项

  • 引用 MongoDB 模式及其 RDBMS 等效模式

  • 应用程序现代化记分卡

← 数据建模概念