How the assessment score is calculated
In database migrations scenarios, the assessment score is primarily relevant for the source database since the target database is usually empty and new.
The score is calculated based on multiple factors including the type, object structure, schema diversity, cardinality and data characteristics of the underlying database.
In general, given a database migration scenario for a specific source and target combination, the higher the source database assessment score, the larger is the effort to migrate this database with respect to another source database with a lower assessment score.
For example, In an Oracle to PostgreSQL database migration scenario:
Given two Source Oracle Databases SALES, and FIN with the following assessment scores:
Source Database SALES : Score 50000
Source Database FIN : Score 25000
And a target database Azure PostGreSQL, it would require more effort to migrate database SALES to the target PostgreSQL database, as compared to database FIN using the same migration technique.
As you plan, customize and undertake your migration activities, you can run multiple assessments and see how this score iteratively changes. For example, excluding certain tables or schemas from migration and rerunning the assessment should lower the assessment score, and in turn the migration effort.
Score calculation
There are various factors to be considered when planning for a migration. Specifically these factors affect migration in terms of duration, requiring more migration compute resources and special handling of the migration application.
When migrating a specific table, Streamshift has identified following factors affecting the migration:
Table size
Total number of tables
Total number of columns
Total number of rows in a tables
Presence of primary and unique keys
Table containing special column types.
Rather than looking at the above factors individually and evaluating the total cost involved(in terms of duration, migration resources), Streamshift will assign a specific score to each factor and the total value of all these factors are presented as a score. For example, higher the Assessment score results in higher cost of migration in terms of longer duration, higher migration compute resources.
Also migration complexity can be evaluated when comparing the assessment score for a table against its source and target database type. To compute such migration complexity involving various factors such as data types, primary keys, no of columns, a simple representation of total assessment score involving such factors will help us to compute such complexity rather than evaluating complexity against various criteria (or factors) of a given table.
Streamshift assignment of scores are documented in the following link - Assessment Calculation Matrix.
Examples
1. table containing simple data types
Here are the characteristics of the table:
Table containing three columns - ID int, Name VARCHAR2(50), AGE int
Table containing ID being a primary key column
Total number of total rows - 1,000,000
Total size of the table is 100 MB
From the Assessment Calculation Matrix, let us consider the various factors associated with the table:
Factors | Value | Category | Score |
Column count | 3 | Narrow Table | 100 |
Size | 100 MB | Small table | 100 |
Row Count | 1,000,000 | Ultra long table | 400 |
Primary key Column | 1 | 10 | |
Data types | 3 | Simple | 3 |
Total | 613 |
2. table containing complex data types
Here are the characteristics of the table:
Table containing columns id int, name VARCHAR2(50), age int , resume BLOB, hiring_date DATE
Table containing ID being a primary key column
Total number of total rows - 1,000,000
Total size of the table is 10 GB
From the Assessment Calculation Matrix, let us consider the various factors associated with the table:
Factors | Value | Category | Score |
Column count | 5 | Narrow Table | 100 |
Size | 10 GB | Large table | 10000 |
Row Count | 1,000,000 | Ultra long table | 400 |
Primary key Column | 1 | 10 | |
Data types | 3 | Simple | 3 |
Date types | 2 | Complex (Blob, Date) | 13 |
Total | 10526 |
3. Wide table containing simple and complex data types
Here are the characteristics of the table:
Table containing 50 columns: 30 of simple data types, 10 of date, 10 of XML
Table containing three columns being a primary key column
Total number of total rows - 1,000
Total size of the table is 1000 MB
From the Assessment Calculation Matrix, let us consider the various factors associated with the table:
Factors | Value | Category | Score |
Column count | 50 | Wide Table | 200 |
Size | 1 GB | Medium table | 1000 |
Row Count | 1000 | Long table | 200 |
Primary key Column | 3 | 30 | |
Data types | 30 | Simple | 30 |
Date types | 10 | Complex (Blob, Date) | 230 (200 for XML, 30 for Date) |
Total | 1690 |
Computing Migration Compatibility
Computing Migration Compatibility