AWS Database Migration Service (AWS DMS) タスクを作成して、そのタスクのコントロールテーブルを有効にしたいと考えています。
解決方法
タスクを作成してコントロールテーブルを有効にする前に、まずタスクのレプリケーションインスタンス、ソースエンドポイント、およびターゲットエンドポイントを作成します。コントロールテーブルは、変更データ収集 (CDC) 操作専用です。全ロード中に問題が発生した場合は、コントロールテーブルの情報を見ることができない可能性があります。
- AWS DMS コンソールを開き、ナビゲーションペインで [Database migration tasks] (データベース移行タスク) を選択します。
- [Create task] (タスクの作成) を選択します。
- [データ移行タスクの作成] セクションから、作成したレプリケーションインスタンス、ソースエンドポイント、およびターゲットエンドポイントを選択します。
- [Migration Type] (移行タイプ) で、次のいずれかのオプションを選択します。
既存のデータの移行
既存のデータを移行し、進行中の変更をレプリケートする
データ変更のみをレプリケートする
- [Task settings] (タスク設定) セクションの [Target table preparation mode] (ターゲットテーブル作成モード) から、次のいずれかのオプションを選択してください。
Do nothing (何もしない) - テーブルがターゲット上にない場合、これによりテーブルを作成します。テーブルが存在する場合、これによりデータとメタデータは変更されません。
ターゲットのテーブルを削除 - ターゲットのテーブルを削除し、テーブルを再作成します。
Truncate (切り捨て) - これによりデータが切り捨てられ、テーブルとメタデータはそのまま残ります。
- [Task settings] (タスク設定) セクションの [Include LOB columns in replication] (レプリケーションに LOB 列を含める) から、次のいずれかのオプションを選択してください。
Don't include LOB columns (LOB 列を含めない)
Full LOB mode (フル LOB モード) - LOB チャンクサイズを指定します。ラージバイナリオブジェクト (LOB) がある場合、AWS DMS は LOB の正確なサイズを認識していないため、移行が遅くなる可能性があります。AWS DMS は、フルサイズが回復するまで、LOB チャンクサイズで指定されているとおりに LOB をまとめてフェッチします。その後、AWS DMS は LOB をターゲットに移行します。
制限付き LOB モード - 最大 LOB サイズを指定します。これは、移行しようとしている最大の LOB のサイズなので、この情報についてソースデータベースにクエリする必要があります。
- [Enable CloudWatch logs] (CloudWatch Logs を有効化) を選択します。
注意: [Enable validation] (検証の有効化) を選択した場合、タスクを完了するにはさらに時間がかかります。
- [テーブルマッピング] セクションから、スキーマとテーブルを追加します。
- [Advanced task settings] (タスクの詳細設定) を展開します。
- [Create control table in target using schema] (スキーマを使用してターゲットにコントロールテーブルを作成する) フィールドに、コントロールテーブルのスキーマを入力します。スキーマフィールドに情報を入力しないと、テーブルはデータベースのデフォルトの場所にコピーされます。各データベースエンジンについて、次のデフォルトの場所を参照してください。
PostgreSQL - Public
Oracle - ターゲットスキーマ
SQL Server - ターゲットデータベース内の dbo
MySQL - awsdms_control
MariaDB - awsdms_control
Amazon Redshift - Public
Amazon DynamoDB - データベース内の個々のテーブルとして作成
- **履歴タイムスロット (分)**フィールドに、各レコードがレプリケーション履歴テーブルに残る分数を入力します。
- 以下のコントロールテーブルで、これらのオプションを有効にします。
例外の適用 - このテーブルは無効にできません。例外、エラー、およびエラーが発生したときに実行されていたステートメントに関する情報が含まれています。
レプリケーションステータス - このテーブルには、現在のタスクの詳細が表示されます。これには、タスクステータス、タスクによって消費されたメモリ量、ターゲットにまだ適用されていない変更の数が含まれます。このテーブルは、ソースの AWS DMS が読み取っている場所と、タスクが全負荷か CDC かを示しています。
停止済みテーブル - このテーブルは、停止済みテーブルのリストと、テーブルが停止した理由を示します。
レプリケーション履歴 - このテーブルはレプリケーション履歴に関する情報を示します。この情報には、タスク中に処理されたレコードの数と量が含まれます。また、CDC タスク終了時のレイテンシーやその他の統計情報も含まれています。
- [Create task] (タスクの作成) を選択します。
- タスクを実行してから、ターゲットデータベースでスキーマとテーブルを確認します。
タスクのコントロールテーブル設定を変更するには、ナビゲーションペインから [データベース移行タスク] を選択します。タスクを選択し、[アクション] をクリックしてから [変更] を選択します。[詳細タスク設定] セクションから、[コントロールテーブル設定] を変更できます。その後、[Save] (保存) を選択します。
関連情報
コントロールテーブルタスク設定