映射规则
映射规则指定每个关系表中的数据应迁移到何处,以及如何将列映射到 MongoDB 文档中的字段。提供有效的关系数据库连接字符串和档案后,系统会在项目内部创建映射规则。
MongoDB 模式设计模式
MongoDB 中的模式设计模式决定了数据的组织方式。良好的模式设计实践可确保高效地存储、检索和操作数据。这些设计决策可以提高 MongoDB 部署的性能和可扩展性。 Relational Migrator 允许您做出关键的模式设计决策,例如将多个表组合成单个集合或在文档中嵌入数据。
有关模式设计最佳实践的概述,请查看以下文档:
映射方向偏好
源关系模型是静态且不变的,而目标 MongoDB 模型是动态且可定制的。
您可以基于源关系模型或目标MongoDB 模型创建映射规则。
关系
映射规则有助于定义表和collection之间的 one-to-one
one-to-many
、 或关系。many-to-many
您可以为以下配置定义映射规则:
映射到单个 MongoDB 集合的单个表。
映射到多个 MongoDB 集合的单个表。
映射到单个集合的多个表。
默认规则
Relational Migrator 自动为每个源表创建“新文档”映射规则。 此初始规则会生成与关系数据库相同的 MongoDB 模式。 您可以在运行任何数据迁移作业之前编辑初始规则。
数据类型检测
Relational Migrator 会自动为每个源列选择最佳的 MongoDB 数据类型。
例如,类型为text
、 varchar
、 nvarchar
或char
的 SQL 服务器源数据将成为 MongoDB 数据类型string
。
预览映射规则
您可以通过查看 MongoDB 图表窗格中的蓝色虚线框来预览映射规则如何影响您的数据模型。 这样,您就可以在应用映射规则之前对其进行预览。
如果集合实体不存在,则会将其添加到图表中,并在整个卡片周围处于预览状态。
如果集合实体已存在,嵌入式映射将添加到卡片,并在新字段周围处于预览状态。
迁移选项
可以使用以下Migrate as
选项定义映射规则:
选项 | 行为 |
---|---|
将关系数据库的每个行转换为新文档。 | |
将每一行转换为由外键关系标识的父文档中的一个数组元素。 | |
将每一行转换为由外键关系标识的子文档中的一组字段或嵌入式对象。 |