Skip to content
Merged
Show file tree
Hide file tree
Changes from 51 commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
1e73430
Adding stubs
nvillahermosa-mdb Mar 10, 2025
723c75b
Typos and wording
nvillahermosa-mdb Mar 10, 2025
502ea2b
Wording
nvillahermosa-mdb Mar 10, 2025
7df38be
Risk reference update
nvillahermosa-mdb Mar 11, 2025
c3addf5
Table rendering config
nvillahermosa-mdb Mar 11, 2025
475d5a1
Table rendering config
nvillahermosa-mdb Mar 11, 2025
e0fb1fe
Table rendering config
nvillahermosa-mdb Mar 11, 2025
de047d7
Table rendering config
nvillahermosa-mdb Mar 11, 2025
daa4414
Table rendering config
nvillahermosa-mdb Mar 11, 2025
865b0ea
Table rendering config
nvillahermosa-mdb Mar 11, 2025
6d07d7b
Table rendering config
nvillahermosa-mdb Mar 11, 2025
d52c6d5
Table rendering config
nvillahermosa-mdb Mar 11, 2025
5e559f7
Added other tables
nvillahermosa-mdb Mar 11, 2025
75c851c
Removed unused stub
nvillahermosa-mdb Mar 11, 2025
513a643
Column widths again
nvillahermosa-mdb Mar 11, 2025
2a113f4
Table formatting
nvillahermosa-mdb Mar 11, 2025
ae45680
Test crossref
nvillahermosa-mdb Mar 11, 2025
5461c23
Crossref fix
nvillahermosa-mdb Mar 11, 2025
d309a21
Crossref fix
nvillahermosa-mdb Mar 11, 2025
fbaff44
Added more links
nvillahermosa-mdb Mar 11, 2025
0be7b8a
Leading sentence for bulleted list
nvillahermosa-mdb Mar 11, 2025
70caf9f
Added numeric precision (unspecified) for MySQL and SQL Server
nvillahermosa-mdb Mar 12, 2025
e6a63fe
Wording update for unsupported types
nvillahermosa-mdb Mar 12, 2025
6805332
Ref cleanup and line length fixes
nvillahermosa-mdb Mar 12, 2025
39dab48
Monospace formatting
nvillahermosa-mdb Mar 12, 2025
1793c66
More refs
nvillahermosa-mdb Mar 12, 2025
6e0de90
Added note
nvillahermosa-mdb Mar 12, 2025
06fcd15
Internal review feedback
nvillahermosa-mdb Mar 12, 2025
3b6922b
Initial draft
nvillahermosa-mdb Mar 13, 2025
40554bc
Added a topic about the report
nvillahermosa-mdb Mar 13, 2025
ec7adcc
Added notes on unsupported features
nvillahermosa-mdb Mar 13, 2025
b8e9481
Copy edits
nvillahermosa-mdb Mar 13, 2025
d947e20
Line break
nvillahermosa-mdb Mar 13, 2025
3be57c7
Wording
nvillahermosa-mdb Mar 13, 2025
6a6d885
Wording
nvillahermosa-mdb Mar 13, 2025
f2a0270
Side TOC depth
nvillahermosa-mdb Mar 13, 2025
ff9b9c7
External review feedback, screenshots
nvillahermosa-mdb Mar 14, 2025
1f95a7d
Adding stubs to check build errors
nvillahermosa-mdb Mar 14, 2025
d8e9afe
Moving database-connections topic to avoid repetitive URL
nvillahermosa-mdb Mar 14, 2025
1b8886b
Added a TOC link to reduce merge conflicts with PR 222
nvillahermosa-mdb Mar 14, 2025
ec55b01
Fixed image paths
nvillahermosa-mdb Mar 14, 2025
ea8ecd6
shortdesc improvement
nvillahermosa-mdb Mar 14, 2025
a1e7154
Added subheadings
nvillahermosa-mdb Mar 14, 2025
4f30a70
Internal review feedback
nvillahermosa-mdb Mar 17, 2025
4bc2bc0
Merge pull request #219 from nvillahermosa-mdb/DOCSP-47930-about-app-…
nvillahermosa-mdb Mar 17, 2025
238e4f4
Merge branch 'app-analysis-feature-branch' into DOCSP-47931-analyze-y…
nvillahermosa-mdb Mar 17, 2025
5d493e0
ref fix
nvillahermosa-mdb Mar 17, 2025
2942a48
Vale check
nvillahermosa-mdb Mar 17, 2025
643427b
Merge pull request #222 from nvillahermosa-mdb/DOCSP-47931-analyze-yo…
nvillahermosa-mdb Mar 17, 2025
7c15bc8
Rebuild
nvillahermosa-mdb Mar 17, 2025
fdce540
Fixed line breaks on alt text directive
nvillahermosa-mdb Mar 18, 2025
9c2071c
Internal review feedback
nvillahermosa-mdb Mar 18, 2025
71de4e7
External review feedback
nvillahermosa-mdb Mar 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions snooty.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ toc_landing_pages = [
"installation/kafka-deployments/migrator-with-kafka",
"installation/file-location",
"database-connections/database-connections",
"app-analysis",
"projects",
"mapping-rules/introduction",
"mapping-rules/mapping-rule-options/introduction",
Expand Down Expand Up @@ -58,3 +59,12 @@ variant = "warning"
value = """\
DB2 database support is currently in public preview. Users looking for production-grade migration assistance, please contact your account representative to engage in a guided evaluation.
"""

[[banners]]
targets = [
"app-analysis.txt",
]
variant = "warning"
value = """\
Pre-Migration Analysis is currently in public preview. Users looking for production-grade migration assistance, please contact your account representative to engage in a guided evaluation.
"""
55 changes: 55 additions & 0 deletions source/app-analysis.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
.. _rm-app-analysis:

======================
Pre-Migration Analysis
======================

.. contents:: On this page
:local:
:backlinks: none
:depth: 1
:class: singlecol

After connecting to a supported relational database, run Pre-Migration
Analysis to identify potential data and configuration risks before attempting
data migration. The resulting report summarizes necessary actions to take
before migrating your data.

.. important::

Relational Migrator supports Pre-Migration Analysis for Microsoft SQL
Server, MySQL, Oracle, and PostgreSQL. Pre-Migration Analysis isn't
supported for databases connected through a JDBC driver. For more
information on supported databases and versions, see
:ref:`supported-databases`.

Types of Risks
--------------

Pre-Migration Analysis groups potential risks into the following types:

- Unsupported source database features
- Data type incompatibilities
- Schema mapping risks
- Migration performance risks

After :ref:`running analysis <rm-run-app-analysis>`, the report lists each
identified risk, its severity, and suggested remediation actions.

For a list of all risks Relational Migrator reports on, see the
:ref:`Migration Risk Reference <rm-app-analysis-risk-reference>`
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[s] add period here?



Get Started
-----------

- :ref:`Connect to a Database <rm-save-relational-connection>`
- :ref:`Run Pre-Migration Analysis <rm-run-app-analysis>`

.. toctree::
:hidden:
:titlesonly:

Run Pre-Migration Analysis </app-analysis/run-analysis>
Analysis Report </app-analysis/analysis-report>
Risk Reference </app-analysis/risk-reference>
138 changes: 138 additions & 0 deletions source/app-analysis/analysis-report.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
.. _rm-analysis-report:

=================================
The Pre-Migration Analysis Report
=================================

.. contents:: On this page
:local:
:backlinks: none
:depth: 2
:class: singlecol

The analysis report lists the migration risks detected in your database, and
provides suggested mitigation actions for each one. To see all the potential
migration risks that Relational Migrator can detect, see the :ref:`Migration
Risk Reference <rm-app-analysis-risk-reference>`.

Summary
-------

The :guilabel:`Summary` section lists the overall migration readiness of your
database, and provides a breakdown of the metrics that affect that readiness
level.

Detection Breakdown
~~~~~~~~~~~~~~~~~~~

The Detection Breakdown shows how many detections have Actions Required,
are Potential Risks, or are strictly Informational.

.. image:: /img/app-analysis/app-analysis-detection-breakdown.png
:alt: A screenshot of the detection breakdown, with the migration readiness level and number of detections.

Database Object Overview
~~~~~~~~~~~~~~~~~~~~~~~~

The Database Object Overview shows detections for Tables, Stored Procedures,
Triggers, and Views. Table risks are further categorized as Data Type, Schema,
Unsupported Feature, or Performance.

.. note::

Pre-Migration Analysis doesn't analyze the SQL code of stored
procedures, views, and triggers. If your database has procedures that may
present an issue, please contact your account representative.

.. image:: /img/app-analysis/app-analysis-db-objects.png
:alt: A screenshot of the database object overview, with the number of detections of each type.

Once you've addressed the migration risks, you can run Pre-Migration Analysis
again by clicking :guilabel:`Rerun analysis` to confirm that there aren't any
more issues.

Database
--------

The :guilabel:`Database` section lists all detected risks for your relational
database. If you use the :guilabel:`Status` column of the table to mark
resolved risks, they are hidden from the list. Check :guilabel:`Include
resolved detections` to show them.

You can switch between tabs for more information on different types of
detections.

The All detections tab
~~~~~~~~~~~~~~~~~~~~~~

This is the default tab, and shows all detections in a single table. You can
use the dropdown to switch between :guilabel:`Show all`, :guilabel:`Tasks
only`, :guilabel:`Risks only`, and :guilabel:`Notes only`.

The Tables tab
~~~~~~~~~~~~~~

The :guilabel:`Tables` tab lists detections for each table. The
:guilabel:`Overview and Analysis` toggle shows detections. Switch it to
:guilabel:`Columns` to see the column definitions for the selected table.

The Stored Procedures tab
~~~~~~~~~~~~~~~~~~~~~~~~~

.. note::

Pre-Migration Analysis doesn't analyze stored procedure SQL code
for risks.

The :guilabel:`Stored Procedures` tab shows each procedure. Switch the
:guilabel:`Overview and Analysis` toggle to :guilabel:`SQL code`
to see the code for the selected procedure.

The Triggers tab
~~~~~~~~~~~~~~~~

.. note::

Pre-Migration Analysis doesn't analyze trigger SQL code for
risks, because MongoDB doesn't natively support triggers. Consider using
:ref:`Query Converter <rm-query-converter>` to convert your SQL to
:atlas:`Atlas Triggers </atlas-ui/triggers/>`, in order to replicate

Check failure on line 99 in source/app-analysis/analysis-report.txt

View workflow job for this annotation

GitHub Actions / TDBX Vale rules

[vale] reported by reviewdog 🐶 [MongoDB.Wordiness] Consider using 'to' instead of 'in order to'. Raw Output: {"message": "[MongoDB.Wordiness] Consider using 'to' instead of 'in order to'.", "location": {"path": "source/app-analysis/analysis-report.txt", "range": {"start": {"line": 99, "column": 51}}}, "severity": "ERROR"}

Check failure on line 99 in source/app-analysis/analysis-report.txt

View workflow job for this annotation

GitHub Actions / TDBX Vale rules

[vale] reported by reviewdog 🐶 [MongoDB.ConciseTerms] 'to' is preferred over 'in order to'. Raw Output: {"message": "[MongoDB.ConciseTerms] 'to' is preferred over 'in order to'.", "location": {"path": "source/app-analysis/analysis-report.txt", "range": {"start": {"line": 99, "column": 51}}}, "severity": "ERROR"}
existing behavior.

The :guilabel:`Triggers` tab shows each trigger. Switch the
:guilabel:`Overview and Analysis` toggle to :guilabel:`SQL code`
to see the code for the selected trigger.

The Views tab
~~~~~~~~~~~~~

.. note::

Pre-Migration Analysis doesn't analyze view definitions for
risks, because views must be converted to MQL. Consider using :ref:`Query
Converter <rm-query-converter>` to migrate views.

The :guilabel:`Views` tab shows each view. Switch the
:guilabel:`Overview and Analysis` toggle to :guilabel:`SQL code`
to see the SQL definition for the selected view.

The Incompatible features tab
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The :guilabel:`Incompatible features` tab lists incompatible features in your
source database that either don't have a MongoDB equivalent, or work
differently enough that Relational Migrator can't automatically migrate them.

Prerequisites
-------------

The :guilabel:`Prerequisites` section lists necessary tasks to prepare your
database for migration. This is a targeted list of recommendations based on the
information gathered during Pre-Migration Analysis. For general information on
database prerequisites, see :ref:`rm-prerequisites`.

Resources
---------

The :guilabel:`Planning Resources` section lists links to MongoDB blogs and
documentation content about data modeling and migration.
Loading
Loading