Docs 菜单

数据建模

要在Relational Migrator中对数据进行建模,请设计MongoDB模式并创建映射规则。映射规则指定如何将关系表列映射到MongoDB文档。提供有效的关系数据库连接字符串和凭证后,您可以在项目中创建映射规则。

MongoDB中的模式设计模式决定了数据的组织方式。 良好的模式设计实践可确保高效存储、检索和操作数据。 这些设计决策可以提高MongoDB 部署的性能和可扩展性。 Relational Migrator允许您做出关键的模式设计决策,例如将多个表组合成单个集合或在文档中嵌入数据。

有关模式设计最佳实践的概述,请查看以下文档:

映射规则有助于定义表和collection之间的 one-to-oneone-to-many、 或关系。many-to-many

您可以为以下配置定义映射规则:

  • 映射到单个MongoDB集合的单个表。

  • 映射到多个MongoDB集合的单个表。

  • 映射到单个集合的多个表。

Relational Migrator会自动为每个源表创建 新文档映射规则。此初始规则会生成与关系数据库相同的MongoDB模式。您可以在运行任何数据迁移作业之前编辑初始规则。

Relational Migrator 会自动为每个源列选择最佳的 MongoDB 数据类型。

示例,类型为 textvarcharnvarcharchar 的SQL Server 源数据将成为MongoDB string数据类型。

您可以基于源关系模型或目标MongoDB 模型创建映射规则。

您可以在创建映射规则时修改MongoDB模型,但Relational Migrator会将关系模型视为静态且不变的。如果关系数据库模式发生更改,则必须刷新关系模型。有关详细信息,请参阅管理关系模型。

您可以使用以下 Migrate as 选项定义映射规则:

选项
行为

将关系数据库的每个行转换为新文档。

将每一行转换为由外键关系标识的父文档中的一个数组元素。

将每一行转换为由外键关系标识的子文档中的一组字段或嵌入式对象。

您可以使用自定义字段创建映射规则。 Relational Migrator还支持表筛选器,以限制从关系表迁移的数据。

如果您的数据库没有外键约束,您可以手动添加外键作为合成外键。当Relational Migrator将源关系数据转换为MongoDB集合时,所有外键都将转换为MongoDB文档引用。有关详细信息,请参阅合成外键

您可以通过查看 MongoDB 图表窗格中的蓝色虚线框来预览映射规则如何影响您的数据模型。 这样,您就可以在应用映射规则之前对其进行预览。

  • 如果集合实体不存在,则会将其添加到图表中,并在整个卡片周围处于预览状态。

  • 如果集合实体已存在,嵌入式映射将添加到卡片,并在新字段周围处于预览状态。

预览映射选项