AI ツールによるエージェント移行
AI コーディングエージェントは、スキーマを分析し、コードを変換し、組み込みの安全チェックを使用して DDL 移行を実行することで、Aurora DSQL への移行を加速できます。
Kiro を使用した移行
Kiro
-
スキーマ分析: 既存のスキーマファイルをアップロードし、Kiro に潜在的な互換性の問題を特定して代替案を提案してもらいます
-
コード変換: アプリケーションコードを提供し、トリガーロジックのリファクタリング、シーケンスの UUID への置き換え、トランザクションパターンの変更などを Kiro に依頼します
-
移行計画: Kiro に特定のアプリケーションアーキテクチャに基づいたステップバイステップの移行計画の作成を依頼します
-
DDL 移行: 安全チェックとユーザー検証が組み込まれたテーブル再作成パターンを使用してスキーマ変更を実行します
プロンプトの例:
"Analyze this PostgreSQL schema for DSQL compatibility and suggest alternatives for any unsupported features" "Help me refactor this trigger function into application-level logic for DSQL migration" "Create a migration checklist for moving my Django application from PostgreSQL to DSQL" "Drop the legacy_status column from the orders table" "Change the price column from VARCHAR to DECIMAL in the products table"
テーブルの再作成による DDL 移行
Aurora DSQL MCP サーバーで AI エージェントを使用する場合、特定の ALTER TABLE オペレーションでは、データを安全に移行するテーブル再作成パターンが使用されます。エージェントは複雑な処理を引き受けながら、各ステップで常に情報を提供します。
次のオペレーションでは、テーブルの再作成パターンが使用されます。
| Operation | アプローチ |
|---|---|
DROP COLUMN |
新しいテーブルから列を除外する |
ALTER COLUMN TYPE |
移行中にデータ型をキャストする |
ALTER COLUMN SET/DROP NOT NULL |
新しいテーブル定義の制約を変更する |
ALTER COLUMN SET/DROP DEFAULT |
新しいテーブル定義でデフォルトを定義する |
ADD/DROP CONSTRAINT |
新しいテーブルに制約を追加または削除する |
MODIFY PRIMARY KEY |
一意性検証を備えた新しい PK を定義する |
| 列の分割/結合 | SPLIT_PART、SUBSTRING、または CONCAT を使用する |
次の ALTER TABLE オペレーションは、テーブルの再作成なしで直接サポートされています。
ALTER TABLE ... RENAME COLUMN– 列名の変更ALTER TABLE ... RENAME TO– テーブル名の変更ALTER TABLE ... ADD COLUMN– 新しい列を追加する
安全機能: DDL 移行を実行するときに、AI エージェントは移行計画を提示し、データの互換性を検証し、行数を確認し、DROP TABLE などの破壊的な操作を行う前に明示的な承認をリクエストします。
バッチ移行: 3,000 行を超えるテーブルの場合、エージェントはトランザクション制限内に収まるように 500~1,000 行単位で移行を自動的にバッチ処理します。
Aurora DSQL MCP サーバー
Aurora DSQL モデルコンテキストプロトコル (MCP) サーバーを使用すると、AI アシスタントが Aurora DSQL クラスターに直接接続し、Aurora DSQL ドキュメントを検索できるようになります。これにより、AI は次のことが可能になります。
-
既存のスキーマを分析し、移行の変更を提案します
-
テーブル再作成パターンを使用して DDL 移行を実行する
-
移行中にクエリをテストし、互換性を検証します
-
最新の Aurora DSQL ドキュメントに基づいて、正確で最新のガイダンスを提供します
AI アシスタントで Aurora DSQL MCP サーバーを使用するには、Aurora DSQL MCP サーバーのセットアップ手順を参照してください。