Relational Migrator is a free tool to help you migrate from a relational database to MongoDB. This page provides an overview of Relational Migrator's key features, use cases, migration scenarios, and supported databases and versions.
Key Features
Map and Model Data
Relational Migrator provides an entity-relationship diagram builder to map your relational schema to a MongoDB schema. You can start with a recommended schema, a 1:1 mapping, or create a new schema from scratch. For more information, see Data Modeling.
Generate Application Code
Relational Migrator generates MongoDB-compatible JSON application code for entity classes, persistence layers, and APIs.
Code generation templates support JSON output. For more information, see Code Generation Templates.
Migrate to MongoDB
Use Relational Migrator to migrate snapshot data from supported relational databases to MongoDB Atlas or a self-managed MongoDB deployment. For more information, see Use Cases.
Use Cases
Relational Migrator is only compatible with Snapshot migration jobs.
Snapshot migration jobs migrate all data once, and then stop. You can use snapshot migrations for point-in-time database migrations, batch migrations, and incremental syncs. You can also use them with table filters to split large migration jobs into parallel batches to improve performance.
Migration Scenarios
You can use Relational Migrator to migrate one legacy application at a time to MongoDB. Depending on your application's needs, you can migrate either with or without downtime.
Migrate During Scheduled Downtime
If your application does not require constant uptime, such as in the case of an internal application, you can have the migration occur during scheduled downtime. Migrating during downtime is the easiest way to configure and complete the migration process.
When you start the migration process, Relational Migrator takes a snapshot of the data on the legacy application and migrates the data from that point in time. During the migration process, your legacy application can remain online to support incoming reads, but cannot support incoming writes. The length of the migration process depends on several factors, such as the amount of data being migrated and your connection speed.
After the migration completes, take your legacy application offline and launch your new application.
Unsupported Scenarios
Relational Migrator currently does not support migrating an operational data store.
Supported Databases and Versions
Source Databases and Versions
Relational Migrator supports the following source databases:
Database | Supported Versions | Deployments |
|---|---|---|
2012 and higher (Enterprise or Developer edition required for versions before 2016) | Self hosted, AWS RDS, Azure SQL Database | |
5.7 and higher | Self hosted, AWS RDS/Aurora, Azure Database | |
11g and higher | Self hosted, AWS RDS | |
10 and higher | Self hosted, AWS RDS/Aurora, Azure Database | |
10 and higher | Self hosted, AWS RDS/Aurora, Azure Database |
For information on connecting to relational databases, see Connect to Databases.
Databases Supported with a JDBC Driver
Important
This feature is in public preview.
Some databases are supported for snapshot data migration through a JDBC connection.
Database | Supported Versions | Deployments |
|---|---|---|
DB2 | 11.5 and higher | Self hosted, AWS RDS |
Sybase ASE | 15 and higher | Self hosted |
Target Databases and Versions
Relational Migrator supports the following target databases:
Deployment Type | Supported Versions |
|---|---|
MongoDB Server (Self-Managed) | 5.0 and higher |
MongoDB Atlas | 5.0 and higher |
For information on connecting to MongoDB, see Connect to MongoDB.