AWS DMS タスク検証が失敗したり、止まってしまったりするのはなぜですか?

所要時間1分
0

AWS Database Migration Service (AWS DMS) タスクの検証を有効にしましたが、検証に失敗したり、その処理が行われなかったりします。

簡単な説明

AWS DMS タスクの検証機能を使用すると、テーブルレベルで統計を確認し、データ検証の設定を行うことができます。

解決策

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI で発生したエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。

データ検証の情報の確認には、AWS DMS コンソール、AWS CLI、AWS DMS API のいずれかを使用できます。

AWS DMS コンソールを使用する

次の手順を実行します。

  1. AWS DMS コンソールを開きます。
  2. ナビゲーションペインで [データベース移行タスク] を選択します。
  3. タスクの名前を選択します。
  4. [テーブル統計情報] セクションで検証状態を確認します。

AWS CLI を使用する

JSON 形式のデータ検証レポートを確認するには describe-table-statistics コマンドを実行します。

aws dms  describe-table-statistics --replication-task-arn arn:aws:dms:us-east-1:45454545454:rep:XXXXXXXXXXXXXXXXXX

AWS DMI API を使用する

DescribeTableStatistics 操作を実行します。

検証のトラブルシューティング

検証の状態が Mismatched records の場合は、awsdms_validation_failures_v1 テーブルをクエリすると、AWS DMS によりターゲットデータベースにテーブル awsdms_validation_failures_v1 が作成されます。

select * from awsdms_validation_failures_v1 where TASK_NAME = 'XXXXXXXXXXXXXXXXXX';

注: TASK_NAME 値はタスクの外部リソース ID であり、タスクの ARN の最後の値です。

失敗したレコードのプライマリキーを取得した後、ソースエンドポイントとターゲットエンドポイントにクエリを実行して、レコードの一致しない部分を確認します。

検証の状態が Pending records である場合は、タスク検証設定の ThreadCount パラメータを設定することで、検証のパフォーマンスを向上させることができます。詳細については、「データ検証タスクの設定」を参照してください。

その他の検証状態については、「レプリケーションタスクの統計情報」を参照してください。CloudWatch メトリクスを使用すると、検証の進行状況を監視できます。

関連情報

トラブルシューティング

制限

AWS公式
AWS公式更新しました 2ヶ月前