Question

Difficulty: Very hardDatabase Migration and Schema Conversion using DMS and SCT

A company is migrating a critical on-premises Oracle database to an Amazon Aurora PostgreSQL-Compatible Edition DB cluster. The database contains several tables with high-volume transaction writes and columns containing Large Objects (LOBs) that average 64 KB64\text{ KB} but can reach up to 10 MB10\text{ MB} in size. To minimize downtime, the solutions architect plans to use the AWS Schema Conversion Tool (AWS SCT) and AWS Database Migration Service (AWS DMS) for Change Data Capture (CDC). The migration must minimize the CPU overhead on the production Oracle source database and ensure that no LOB data is truncated during the replication. Which configuration should the solutions architect implement to meet these requirements?

  1. Configure AWS DMS to use the Binary Reader method for CDC, ensuring that the replication user has appropriate access to the Oracle directories containing the redo and archive logs, and enable supplemental logging at both the database and table levels. In the DMS task settings, enable inline LOBs by setting SupportLobs to true and specifying an InlineLobMaxSize of 128 KB128\text{ KB}.Answer
  2. B
    Configure AWS DMS to use the Oracle LogMiner method for CDC to process transaction logs, and enable supplemental logging only at the table level for the primary key columns. In the DMS task settings, configure the task to use Limited LOB mode with a LobMaxSize of 64 KB64\text{ KB} to ensure high performance and prevent memory exhaustion on the replication instance.
  3. C
    Configure AWS DMS to use the Binary Reader method for CDC to read redo logs. In the DMS task settings, configure the task to use Full LOB mode to prevent truncation of any large columns. Rely on the AWS SCT agent to capture database changes and stream them to the DMS replication instance without enabling database-level supplemental logging.
  4. D
    Configure AWS DMS to use the Oracle LogMiner method for CDC, and enable database-level minimal supplemental logging. In the DMS task settings, disable LOB support during the initial load, and configure an AWS Lambda function triggered by Amazon S3 event notifications to manually sync LOB updates using the AWS SCT extension pack.

Answer

The configuration that uses AWS DMS Binary Reader for CDC with supplemental logging enabled at the database and table levels, combined with inline LOB settings in the task configuration.
To migrate a high-volume Oracle database to Amazon Aurora PostgreSQL with minimal source CPU overhead and no data truncation, the Solutions Architect should use the AWS DMS Binary Reader method. Unlike LogMiner, which queries the database engine directly and consumes CPU, Binary Reader reads the redo and archive logs directly from the file system or ASM. Additionally, AWS DMS CDC requires supplemental logging to be enabled at both the database and table levels. To handle LOB columns where the average size is small (64 KB64\text{ KB}) but maximum size is large (10 MB10\text{ MB}), inline LOB mode (InlineLobMaxSize) should be used. This allows DMS to transfer LOBs smaller than the threshold inline with table rows for maximum performance, while performing a full lookup only for larger LOBs to prevent truncation.

Step-by-Step Solution

1
Evaluate the CPU overhead of log mining methods on the source Oracle database.
Oracle LogMiner runs SQL queries on the source DB and incurs high CPU overhead, whereas AWS DMS Binary Reader reads redo and archive logs directly from the file system or ASM, significantly reducing CPU load on the production database.
The migration must minimize source database CPU overhead.
2
Determine the CDC logging prerequisites for AWS DMS.
AWS DMS requires supplemental logging to be enabled at both the database level (minimal supplemental logging) and the table level (for primary keys and LOB columns) to capture transaction log changes.
Failing to enable supplemental logging prevents AWS DMS CDC from tracking row modifications.
3
Analyze the LOB replication requirements to optimize performance and prevent data truncation.
Using Inline LOB mode with an InlineLobMaxSize of 128 KB128\text{ KB} allows DMS to transfer LOBs below the threshold inline for optimal performance, while using a full lookup for larger LOBs up to 10 MB10\text{ MB} to prevent truncation.
LOBs average 64 KB64\text{ KB} but can reach 10 MB10\text{ MB}. Limited LOB mode would truncate data, while Full LOB mode would degrade performance.

Key Concept

Optimizing AWS DMS CDC performance and LOB replication during heterogeneous migrations from Oracle to Amazon Aurora.
Estimated Time:3m 0s
Rate this question