Skip to main content

Create and analyze a migration project

A migration project holds the source files that you migrate with Genie Migrate. Create a project and add your source files to it. Then analyze the project to review code complexity and the dependencies between files, and plan the migration in groups, before you convert. Analysis is optional for SQL projects and required for Informatica projects. For an overview of migration projects, see What is a migration project?.

Create a migration project​

To create a migration project, upload your source files to your workspace, create the project, and then add the files to it.

Step 1: Upload source files​

Upload your existing SQL files (.sql) or ETL exports (.xml) using the workspace file browser, or use the Databricks CLI to bulk-upload a directory of scripts.

Step 2: Choose the source dialect and target framework​

Create a migration project from your workspace:

  1. Click New Icon > Migration project.
  2. Enter a Name for the project.
  3. Use the drop-down selectors to choose a Source dialect and a Target framework. For Target framework, choose DBSQL or Notebooks (Beta). See Supported source dialects and target frameworks. If you choose Informatica as the source dialect, the target framework is set to Notebooks.
  4. Enter the file path to the target Destination folder. Click Browse to choose a destination from a list of available workspace folders.
  5. Click Create.

New migration project dialog showing the project name, source dialect, target framework, and destination folder fields.

Step 3: Add source files to the project​

After you create the project, add the files that you uploaded:

  1. In the project, click Add files > + Add files.
  2. Select the source folder or a file from your workspace.

In Informatica projects, only .xml files are added. Files of other types are skipped.

The Files tab lists each file with its file type, line count, and conversion status. Informatica projects open on the Inventory tab, which lists each export with the objects it contains.

Migration project Files tab showing source files grouped by script type, each with a Not started status and its line count.

Analyze code complexity and lineage (Beta)​

Beta

This feature is in Beta. To use it, a workspace admin must turn on Migration Projects Experimental Features from the Previews page. See Manage Databricks previews.

Analysis shows the complexity of each source file and the dependencies between files and tables, so you can plan which files to migrate together. Analysis is available for every supported source dialect. The steps depend on the project type.

  1. In the project, click Analyze all. If the project has no lineage, Analyze all is the default action. Otherwise, select Analyze all from the button's drop-down menu. Analysis covers every file in the project, even if you select files.
  2. Wait for the analysis to finish. To cancel a running analysis, click Stop. When the analysis finishes, the button changes to Convert all.
  3. Click a source file to open its complexity assessment, and click Lineage to open a dependency graph that shows interdependent files and tables that you must migrate together.

Migration project Lineage tab showing a dependency graph that connects source files to the tables they read and write.

Plan the migration in groups​

After analysis, use groups to plan the order of your migration. A group is a set of files that you convert and review together, so you can work through the migration in stages. The Files tab lists your groups in order, followed by an Unassigned group that holds the files that aren't in a group yet. Groups are available for SQL sources. Informatica projects show files by folder instead.

  • To create a group, select files, click Move, and select New group…. To move files to another group, select them, click Move, and choose the group. You can also drag files onto a group.
  • To rename a group, click its name. To delete a group, hover over its row and click Delete group. Its files move to Unassigned.
  • To convert a group, hover over its row and click Convert this group. Files that are already converted or reviewed are skipped, and each run converts up to 500 files. See Step 1: Run the conversion. If a group has files that failed to convert, the row shows Retry failed instead. Click it to convert only those files again.
  • To see your files by script type instead, such as stored procedures, views, and tables, select Script type above the list. Select Groups to return to your groups.
  • You can also ask Genie Code to group files for you. It can read the project's lineage, create groups, and add files to them.

On the Lineage tab, check groups in the side panel to see their lineage. Groups are laid out from left to right, and each group appears after the groups that write the tables it reads, so you can see which groups to convert first.

Next steps​