Migrating the database progressively

If you can work only on selected migrated projects in the current V8.10.5, then use the progressive migration tool when you are ready to migrate the rest.

Before you begin

The following descriptions cover two approaches to migration.

Full migration
In a full migration, you copy or transform all the data from the source Decision Center to the target Decision Center, and the old Decision Center database becomes the new database. The user sees a single instance of Decision Center. Full migration requires all the target runtimes to be upgraded, and all the project teams to be ready to do regression testing on the next redeployment.
Progressive migration
In a progressive migration, the old and new versions of Operational Decision Manager coexist throughout the migration. It requires two instances of Decision Center: source and target. It also requires two runtime stacks. You convert projects over time, when teams are ready to test projects. In a typical progressive migration, you do as follows:
  • Move the decision services one by one from the source Decision Center to the target Decision Center.
  • Maintain the two instances of Decision Center and direct users appropriately.
  • Mark the rule projects as read-only in the source Decision Center to limit development to the target Decision Center.

About this task

If you need to migrate only specific projects to the current version, you must first migrate the entire database because the progressive migration tool does not handle elements that are not specific to projects, such as RuleApps, server definitions, and user permissions and settings. You can then select the projects you need in the migrated database, and delete the rest. You use the progressive migration tool to migrate the remainder of the projects from your old database.

The purpose of progressive migration is to migrate only a subset of the repository projects to allow the departments in an organization to migrate according to their availability. This approach requires progressive migration scripts that to be generated and executed multiple times over a long period. The scripts include DDL statements that might require specific permissions depending on company procedures.

New in 8.10.4 To facilitate the multiple executions, the DDL statements are grouped together in the scripts so that they can be easily cached and executed. DDL statements at the start of a script create temporary tables that store intermediate values. These tables must be removed when the migration is completed, so DDL statements at the end of the script delete the tables.

The progressive migration tool automatically handles dependent projects. You need to specify only the main project when running the tool. If one of the dependent projects is already available in the new database, the migration tool simply ignores this project.

The progressive migration Ant task is defined in <InstallDir>/teamserver/bin/build.xml and is of the form:
  • For versions 7.5 to 8.5: ant gen-prog-migrationXX-script -DoldDatabaseSchemaName -Dprojects (where XX is the version of the original database).
  • For versions from V8.6: ant gen-prog-migration-script -DoldDatabaseSchemaName -Dprojects

The Ant task takes the following parameters:

-DoldDatabaseSchemaName=<database schema name used in previous data source>

-Dprojects="project1,project2,project3"

Tip: In Oracle, you must close and reopen the database connections to get updated privileges.

Procedure

  1. Migrate the entire database to be able to retain your non project-specific elements.
  2. In the migrated database, manually delete the projects that you want to keep working on in the old database.
  3. When you are ready to migrate the remainder of the old projects, use the gen-prog-migration-script Ant task to select which projects from the old database to import.