Relational Migrator概述
Relational Migrator是一款免费工具,可帮助您从关系数据库迁移到MongoDB。本页概述了 Relational Migrator 的 主要功能、使用案例、迁移场景以及支持的数据库和版本。
主要功能
映射和模型数据
Relational Migrator提供实体关系图表构建器,用于将关系模式映射到MongoDB模式。您可以从推荐的模式、1:1 映射开始,或者从头开始创建新模式。有关更多信息,请参阅 数据建模。
生成应用程序代码
Relational Migrator可为实体类、持久层和 API 生成与MongoDB兼容的C#、 Java和JavaScript应用程序代码。
代码生成模板支持JSON输出和常见应用程序框架,例如 Spring Data、Node 和Mongoose。有关详细信息,请参阅代码生成模板。
转换和验证SQL对象
Relational Migrator使用生成式AI将SQL查询、视图和存储过程转换为与MongoDB兼容的C#、 Java或JavaScript代码。
您可以在Relational Migrator中测试查询,以验证转换后的SQL ,并确保您的查询与MongoDB兼容。
迁移到MongoDB
使用Relational Migrator将数据从支持的关系数据库迁移到MongoDB Atlas或自管理的MongoDB 部署。您可以选择快照迁移,也可以选择带有变更数据捕获 (CDC) 的连续同步。有关更多信息,请参阅使用案例。
Relational Migrator与Apache Kafka和 Confluent Cloud 集成,可实现扩展迁移。有关更多信息,请参阅Kafka部署。
用例
Relational Migrator支持快照迁移作业和持续迁移作业。
快照迁移作业会一次性迁移所有数据,然后停止。您可以使用快照迁移进行时间点数据库迁移、批处理迁移和增量同步。您还可以将它们与表筛选器一起使用,将大型迁移作业分割为并行批处理,以提高性能。
持续迁移作业运行快照迁移,然后进入 CDC 阶段,该阶段会持续复制数据更改。
某些关系数据库仅与快照迁移作业兼容。有关详细信息,请参阅下表:
Database | 快照迁移作业支持 | 持续迁移作业支持 |
---|---|---|
JDBC 驾驶员支持的数据库 |
迁移场景
您可以使用Relational Migrator一次将一个旧版应用程序迁移到MongoDB。 根据应用程序的需求,可以在停机或不停机的情况下进行迁移。
在计划的停机时间内迁移
如果应用程序不需要恒定的正常运行时间(例如内部应用程序),则可以在计划的停机时间内进行迁移。 在停机期间迁移是配置和完成迁移过程的最简单方法。
当您开始迁移过程时,Relational Migrator 会对旧版应用程序上的数据拍摄快照,并从该时间点开始迁移数据。 在迁移过程中,传统应用程序可以保持在线以支持传入读取,但不能支持传入写入。 迁移过程的长度取决于多个因素,例如要迁移的数据量和连接速度。
迁移完成后,使旧应用程序离线并启动新应用程序。
无需停机即可迁移
如果应用程序在迁移进程中必须保持在线以支持读取和写入,则可以使用 CDC 在不停机的情况下迁移数据。此进程称为持续迁移。
当您启动持续迁移作业时, Relational Migrator会拍摄旧版应用程序上的数据快照,并近乎实时地跟踪数据库更新。在迁移进程中,源数据库和目标数据库保持同步。
持续迁移作业完成后,您可以将用户转移到新应用程序并关闭旧应用程序。
要学习;了解有关迁移作业的更多信息,请参阅数据迁移。
不支持的场景
Relational Migrator目前不支持迁移操作数据存储。根据您的工作负载,迁移数据存储可能会导致CDC无限期运行而未完成,不建议在Relational Migrator中执行此操作。
支持的数据库和版本
源数据库和版本
Relational Migrator 支持以下源数据库:
Database | 支持的版本 | 部署 |
---|---|---|
2012 年及更高版本(2016 年之前的版本需要 Enterprise 或 开发者 版本) | 自托管、Amazon Web Services RDS、Azure SQL 数据库 | |
5.7 及更高版本 | 自托管、Amazon Web Services RDS/Aurora、Azure 数据库 | |
11克或更高 | 自托管,Amazon Web Services RDS | |
10 及更高版本 | 自托管、Amazon Web Services RDS/Aurora、Azure 数据库 | |
10 及更高版本 | 自托管、Amazon Web Services RDS/Aurora、Azure 数据库 |
有关连接到关系数据库的信息,请参阅连接到数据库。
JDBC驱动程序支持的数据库
重要
此功能处于公开预览阶段。
部分数据库支持通过 JDBC 连接进行快照数据迁移。您可以针对这些数据库运行快照迁移作业,但不能运行连续CDC同步作业。
Database | 支持的版本 | 部署 |
---|---|---|
CockroachDB | 24.3.0 及更高版本 | 自托管 |
Db2 | 11.5 及更高版本 | 自托管,Amazon Web Services RDS |
SQL Anywhere | 16.0 及更高版本 | 自托管 |
Sybase ASE | 15 及更高版本 | 自托管 |
Sybase IQ | 16.0 及更高版本 | 自托管 |
Yugabyte | 2.20 及更高版本 | 自托管 |
目标数据库和版本
Relational Migrator支持以下目标数据库:
部署类型 | 支持的版本 |
---|---|
MongoDB Server (自我管理) | 5.0 及更高版本 |
MongoDB Atlas | 5.0 及更高版本 |
有关连接到MongoDB的信息,请参阅连接到MongoDB。