Advanced Database & Application Migration (ADAM) allows you to smoothly migrate databases to Alibaba Cloud. You can use ADAM to evaluate the feasibility and costs of database migration and obtain recommendations on destination databases. ADAM provides built-in tools that facilitate the entire process of database migration, such as migration assistance, data migration, and application migration. This reduces the risks, technical difficulties, and time cycles of migrating databases and applications.
Supported data sources
- Oracle 10g, 11g, 12c, 18c, and 19c
- Teradata 13, 14, and 15
- Db2 for LUW
- IT system migration to the cloud
Traditional IT systems adopt an architecture that consists of IBM minicomputers, Oracle databases, and EMC storage. To expand traditional IT systems, you must deploy more hardware. Hardware deployments provide better performance at a prohibitive cost. In contrast, the Internet-based distributed architecture supports smooth scaling, and improves performance at a low hardware cost.
- IT system migration within the cloud
You have deployed your IT system on Alibaba Cloud. However, as your business expands, existing databases cannot meet your business requirements. You want to change your databases or create new databases. ADAM provides professional services such as storage solutions and application transformation. You can use ADAM to upgrade your IT system. For example, you can use ADAM in the following scenario: You have used only ApsaraDB RDS for MySQL databases. However, now you want to use MaxCompute databases to store historical data and AnalyticDB for MySQL databases to store analytical data.
ADAM is free to use.
- Database Collector: ADAM collects information about a source database. The information includes operating environments, database objects, SQL statements, storage space, performance, and transactions. Database Collector summarizes the overall status of the source database. Database Collector also processes collected data to reduce data redundancy, enhance data security, and ensure data accuracy. For example, the collector removes duplicates, masks sensitive data, and checks data consistency. For more information, see Collect database information.
- Application Collector: ADAM collects and analyzes information about Java applications in Oracle, Db2, and Teradarta databases. The information includes the architectures and operating information of the Java applications, such as server performance, SQL statements in application code, call stacks for SQL execution, and call relationships between applications or between applications and databases. This helps you obtain full knowledge of the Java applications. ADAM also masks the sensitive data in the collected information. For more information, see Collect application information.
ADAM recommends suitable destination databases for migration projects and estimates the workloads and costs of the migration projects. For more information, see Overview.
- Source database profile analysis: ADAM analyzes information about a source database from multiple dimensions. The information is collected by Database Collector. The dimensions include performance, capacity, features, external dependencies, object details, and panoramic searching. Panoramic analysis provides information such as relationships between objects and features of objects.
- Destination database recommendation: ADAM analyzes the object compatibility and SQL compatibility between a source database and different versions of destination databases based on the scenarios in which the source database is used. This way, ADAM recommends destination databases that meet your business requirements.
- Compatibility evaluation: ADAM analyzes the object compatibility and SQL compatibility between a source database and a specific version of a destination database. ADAM also provides details of object transformation, suggestions on the minimum specifications, estimated costs of the destination database, and possible risks of a migration project.
Database transformation and migration
ADAM allows you to migrate schemas of a source database to a destination database. During the migration, you can transform incompatible DDL statements by manually revising the statements or using the intelligent revision feature. For more information, see Database transformation and migration.
- Migration planning: ADAM creates a plan for migrating data from a source database to a destination database based on database evaluation results. The migration plan includes a conversion solution that maximizes the compatibility between the source and destination databases. ADAM also provides a schema migration tool that automatically converts data types based on the migration plan.
- Precheck: ADAM prechecks the permissions of the account that is used to access a destination database. ADAM also prechecks the plug-ins, the version, mappings of character sets, and the clock of the destination database. This helps ensure that the migration plan is successfully implemented.
- Source database verification: ADAM checks whether the current schemas of a source database are consistent with the evaluation result of the source database. This maximizes the similarity between the schemas of a source database and that of a destination database.
- Schema migration and revision: ADAM allows you to manage schema migration permissions by configuring rules. ADAM also allows you to revise the schemas of a database. If schema migration fails, you can use the information provided by this feature to revise the DDL statements of the schemas and execute the revised DDL statements in a destination database.
- Incremental data comparison: If the current schemas of a source database differ from the evaluation result of the source database, you can use this feature to find the changed or added DDL statements. This ensures that the changed or added schemas can be migrated to a destination database.
Application evaluation and transformation
ADAM helps you efficiently transform applications after you migrate databases. For more information, see Application evaluation and transformation.
- Application dynamic transformation
- Application profile: ADAM analyzes applications from multiple dimensions and generates analysis reports. The analysis reports provide information such as software stacks, system information, object details, SQL statements, and call stacks of the applications.
- Application evaluation: ADAM helps you efficiently find the parts of an application
that need to be transformed after heterogeneous database migration.
- ADAM collects the requests of an application for a database in real time and returns the call stack of code to you. This way, you can easily find the parts of the application that need to be transformed.
- ADAM also collects the SQL queries that correspond to the requests. ADAM analyzes the compatibility of the SQL statements with the destination database, returns the analysis results, and provides instructions on how to edit your application code.
- In addition, ADAM collects the responses to the requests and collects performance data. Then, you can compare the migrated application with the source application in terms of functions and performance.
- Static application transformation: By scanning static SQL statements, ADAM finds the access points from which an application accesses a database. This way, ADAM detects code blocks that need to be transformed because of database migration and provides suggestions on the transformation.
ADAM allows you to smoothly migrate data from a source database to a destination database in a production environment on Alibaba Cloud. This operation is reversible. If the migrated data has errors, you can roll back the migration. For more information, see Create a cutover project.
- Business test: ADAM supports various operations to test your business. For example, you can tune the parameter settings of a destination database, verify the availability, compare and optimize SQL statements, replay SQL statements, and perform stress testing.
- Cutover verification: ADAM allows you to verify the cutover from a source database to a destination database.
- Rollback verification: ADAM allows you to verify the rollback from a destination database to a source database.
- Production cutover: ADAM allows you to validate the migration from a source database to a destination database in a production environment.
- Periodic SQL collection: ADAM continuously collects SQL statements of Oracle databases based on the collection cycle that you specify and automatically merges SQL statements. For more information, see Periodic SQL collection.
- ADAM SQL Adapter: ADAM automatically transforms incompatible SQL statements that are migrated from an Oracle database to a PolarDB instance. This ensures that you do not need to manually transform many SQL statements. For more information, see SQL Adapter.
- SQL comparison test: ADAM provides a database test platform based on Apache JMeter. You can create a test set of SQL statements, perform a test, and view the test result.
ADAM allows you to transform statements in Oracle, Teradata, or Db2 databases to statements that can be executed in MySQL databases, PolarDB for Oracle clusters, or AnalyticDB for PostgreSQL databases.
- Extensive migration experience
ADAM has derived extensive migration experience, especially the experience of a full-process tool chain and the migration experience of transformation from the traditional IT architecture to the Internet-based cloud architecture, from Alibaba Group for several years.
- Pre-evaluation of database migration
ADAM evaluates the feasibility and costs of database migration and recommends suitable destination databases for database migration. ADAM also estimates the workloads of database migration.
- Smooth data migration
ADAM provides the database cutover feature to ensure that the migration is reversible, the performance of the destination database is predictable, and the system downtime is minimized to minutes.
- Sensitive data protection
ADAM masks sensitive data collected by Collectors to prevent data leaks.
- Compatibility analysis
- Compatibility of features: ADAM identifies the source database features that are used by database objects and provides suggestions on substitute features in the destination database.
- Compatibility of scenarios: ADAM analyzes the performance of destination databases in specific scenarios and provides adjustment plans if necessary. You can use this feature in specific scenarios, especially the scenarios in which database performance is vital.
- Automatic mode conversion
ADAM automatically transforms objects such as tables in source databases to objects or Java code in destination databases. You can use this feature to automatically migrate table schemas from source databases to destination databases.