

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# DMS Schema Conversion での AI エージェントの使用
<a name="sc-genai-agents"></a>

AI エージェントを使用して、 AWS API を通じて DMS Schema Conversion ワークフローを推進できます。AI エージェントは、大規模言語モデルを使用して自然言語の手順を理解し、タスクを自動化するソフトウェアツールです。[AWS MCP サーバー](https://docs.aws.amazon.com/agent-toolkit/latest/userguide/mcp-server.html)に接続すると、AI エージェントは移行プロジェクトの作成、ソースデータベースメタデータツリーの参照、スキーマの変換、評価レポートの生成、結果のエクスポート、サービスのさまざまな側面の説明を行うことができます。これらのオペレーションは、自然言語プロンプトを使用して制御します。

DMS Schema Conversion を使用してエージェントの精度と効率を向上させるには、 AWS DMS Schema Conversion スキルをインストールできます。このスキルは、API パターン、システムスキーマの除外、オペレーションシーケンス、サービスのベストプラクティスなど、DMS Schema Conversion 固有のコンテキストを提供します。

**重要**  
このスキルには、**DMS Schema Conversion の使用時に AI エージェントが行う一般的なエラーを防ぎ**、**trial-and-errorループを減らすための手順が含まれています。これにより、トークンの使用量が減少し、目的を達成する速度が向上します**。起動する前にインストールすることを強くお勧めします。

このトピックでは、スキルをインストールする方法と、AI エージェントを通じて実行できる一般的な DMS Schema Conversion ワークフローの例を示します。

## 前提条件
<a name="sc-genai-agents-prerequisites"></a>

開始する前に、以下の前提条件を満たしていることを確認します。このガイドでは、 AWS DMS およびコマンドラインインターフェイスに精通していることを前提としています。
+ **AI エージェント** — [Kiro CLI、Claude Code](https://kiro.dev/cli/)[https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview](https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview)、[カーソル](https://www.cursor.com/)などのモデルコンテキストプロトコル (MCP) をサポートする AI コーディングエージェント。
+ **AWS MCP サーバー** — AWS API コールを実行できるように、エージェントで [AWS MCP サーバー](https://docs.aws.amazon.com/agent-toolkit/latest/userguide/mcp-server.html)を設定します。詳細については、 AWS 「 エージェントツールキットユーザーガイド[」の AWS 「MCP サーバーのセットアップ](https://docs.aws.amazon.com/agent-toolkit/latest/userguide/getting-started-aws-mcp-server.html)」を参照してください。
+ **AWS 認証情報** — エージェントには、 AWS DMS APIs を呼び出すためのアクセス許可を持つ AWS 認証情報が必要です。[AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-authentication.html) を使用して認証情報を設定します。必要なアクセス許可の詳細については、「[を使用するために必要な IAM アクセス許可 AWS DMS](security-iam.md#CHAP_Security.IAMPermissions)」を参照してください。

**注記**  
DMS Schema Conversion で既に移行プロジェクトを設定している場合は、エージェントはすぐにそのプロジェクトを操作できます。それ以外の場合は、エージェントで作成できます。詳細については、「[でのデータプロバイダー、インスタンスプロファイル、移行プロジェクトの使用 AWS DMS](migration-projects.md)」を参照してください。

## AWS DMS Schema Conversion スキルのインストール
<a name="sc-genai-agents-skill"></a>

スキルは、AI エージェントが DMS Schema Conversion タスクを効果的に完了するのに役立つ手順と参考資料の厳選されたパッケージです。 AWS DMS Schema Conversion スキルには、API パターン、システムスキーマの除外、オペレーションシーケンスルール、サービスのベストプラクティスが含まれています。このスキルを使用すると、エージェントはエラーを減らし、DMS Schema Conversion オペレーションを完了するためにback-and-forthに行う必要が少なくなります。

スキルをインストールするには、次のいずれかの方法を選択します。

------
#### [ AWS MCP server ]

エージェントが AWS MCP サーバーに接続されている場合、エージェントは MCP サーバーを介してスキルを自動的に検索してロードできます。続行する前に、MCP サーバーがロードされ、接続されていることを確認します。ほとんどの AI エージェントでは、 と入力することで MCP サーバーのステータスを確認できます`/mcp`。次に、エージェントに質問します。

```
Load "dms-schema-conversion" skill using the `retrieve_skill` tool.
```

エージェントは AWS MCP サーバーからスキルを取得し、現在のセッションに適用します。

------
#### [ npx skills CLI ]

エージェントが AWS MCP サーバーを使用しない場合は、GitHub の [AWS Agent Toolkit for AWS](https://github.com/aws/agent-toolkit-for-aws) リポジトリからスキルをローカルにインストールできます。プロジェクトディレクトリから次のコマンドを実行します。

```
npx skills add aws/agent-toolkit-for-aws/skills/specialized-skills/migration-and-modernization-skills/dms-schema-conversion
```

**注記**  
AI コーディングツール内でカスタムエージェント定義を使用する場合は、エージェント設定にスキルディレクトリが含まれていることを確認してください。それ以外の場合、エージェントはスキルを検出してロードできません。

------
#### [ Manual installation ]

[AWS Agent Toolkit for AWS](https://github.com/aws/agent-toolkit-for-aws) リポジトリのクローンを作成し、スキルディレクトリをエージェントのスキルロケーションにコピーします。次の表は、サポートされているエージェントのスキルパスを示しています。


| [エージェント] | プロジェクトスキルパス | グローバルスキルパス | 
| --- | --- | --- | 
| Kiro CLI | .kiro/skills/ | \~/.kiro/skills/ | 
| Claude Code | .claude/skills/ | \~/.claude/skills/ | 
| カーソル | .cursor/skills/ | \~/.cursor/skills/ | 
| Codex | .agents/skills/ | \~/.codex/skills/ | 

**注記**  
AI コーディングツール内でカスタムエージェント定義を使用する場合は、エージェント設定にスキルディレクトリが含まれていることを確認してください。それ以外の場合、エージェントはスキルを検出してロードできません。

------
#### [ Direct URL ]

ローカルに何もインストールしなくても、GitHub URL から直接スキルをロードできます。エージェントに質問します。

```
Load skill from https://github.com/aws/agent-toolkit-for-aws/blob/main/skills/specialized-skills/migration-and-modernization-skills/dms-schema-conversion/SKILL.md
```

エージェントは GitHub からスキルコンテンツを取得し、現在のセッションに適用します。

------

スキルが正常にロードされると、使用可能なスキーマ変換アクションを含むアクションメニューが表示されます。

## ベストプラクティス
<a name="sc-genai-agents-best-practices"></a>

DMS Schema Conversion で AI エージェントを使用する際に最良の結果を得るには、以下の推奨事項に従ってください。
+ **変換前に参照 —** スキーマの変換を開始する前に、 エージェントを使用してメタデータツリーを調べます。これにより、移行の範囲を理解し、変換するスキーマを特定できます。
+ **一度に 1 つのスキーマを変換**する — 大規模なデータベースの場合は、スキーマを一度にすべてではなく個別に変換します。これにより、変換されたコードを確認し、アクション項目に段階的に対処することが容易になります。
+ **システムスキーマをスキップ**する — システムデータベースやシステムスキーマを変換しないでください。これには、多数の変換不可能なアクション項目を生成するエンジン内部オブジェクトが含まれています。
+ **適用する前に変換された SQL を確認する** — 変換されたコードを SQL スクリプトとしてエクスポートし、ターゲットデータベース、特にコードオブジェクトに適用する前に確認します。
+ **生成 AI アシスト変換**を有効にする — 生成 AI アシスト変換を有効にして、コードオブジェクトの変換レートを向上させます。生成 AI アシスト変換では、機械学習を使用して、ルールベースのコンバーターが自動的に処理できないオブジェクトを変換します。詳細については、「[生成 AI を使用したデータベースオブジェクトの変換](schema-conversion-convert.databaseobjects.md)」を参照してください。
+ **評価レポートを使用する — **変換または評価後、評価レポートを生成して、変換結果と残りの手動作業の概要を取得します。詳細については、「[DMS Schema Conversion でのデータベース移行評価レポートの作成](assessment-reports.md)」を参照してください。

## 例
<a name="sc-genai-agents-examples"></a>

次の例は、スキルをロードした後に AI エージェントを通じて実行できる一般的な DMS Schema Conversion ワークフローを示しています。

### 移行プロジェクトの作成
<a name="sc-genai-agents-example-create"></a>

この例では、AI エージェントを使用して、Microsoft SQL Server データベースを Amazon Aurora PostgreSQL に変換するための移行プロジェクトを作成します。エージェントは必要な AWS DMS リソースを作成し、それらをリンクします。

次のプロンプトは、移行プロジェクトを作成するようエージェントに指示します。

```
I want to migrate my SQL Server database to Aurora PostgreSQL using DMS Schema Conversion. The source database is on an EC2 instance at 10.0.1.50, port 1433, database name "AdventureWorks". The credentials are stored in Secrets Manager under "mydb-source-credentials". Create a migration project for me.
```

エージェントは、ソースデータプロバイダー、ターゲットデータプロバイダー、インスタンスプロファイル、およびそれらをリンクする移行プロジェクトを作成します。ターゲットデータベースがまだない場合、エージェントは仮想ターゲットデータプロバイダーを作成し、スキーマを SQL スクリプトとして変換およびエクスポートできるようにします。エージェントは、必要な IAM ロールと S3 バケットも作成し、ネットワーク設定をチェックします。

エージェントが移行プロジェクトを作成したら、ソースデータベースメタデータを参照し、スキーマを評価または変換し、結果をエクスポートできます。

### メタデータツリーの表示
<a name="sc-genai-agents-example-browse"></a>

エージェントを使用して、ソースデータベース構造を調べることができます。エージェントはメタデータツリーを階層的にナビゲートし、データベース、スキーマ、テーブル、ストアドプロシージャ、およびその他のオブジェクトを一覧表示します。

```
Show me the databases and schemas in my source database.
```

エージェントは、ソースメタデータがまだインポートされていない場合にインポートし、 AWS DMS API を使用してメタデータツリーをナビゲートします。特定のスキーマを深く掘り下げることができます。

```
Show me the stored procedures in the AdventureWorks.dbo schema.
```

### スキーマの評価または変換
<a name="sc-genai-agents-example-convert"></a>

メタデータツリーを参照した後、 エージェントを使用してスキーマを評価または変換し、結果をエクスポートできます。

```
Convert the AdventureWorks.dbo schema to Aurora PostgreSQL and export the converted SQL scripts.
```

エージェントはスキーマオブジェクトを変換し、変換された SQL スクリプトを S3 バケットにエクスポートします。各変換およびエクスポートオペレーションは非同期的に実行され、エージェントは次のオペレーションを開始する前に完了をポーリングします。変換後、エージェントは評価レポートを生成します。

評価レポートには、変換されたオブジェクトの概要、手動による変更が必要なオブジェクトのアクション項目、および労力の見積もりが含まれます。また、エージェントに特定のアクション項目の意味を説明し、それらを解決する方法に関するガイダンスを提供するように依頼することもできます。

### 長時間実行されるオペレーション中に質問する
<a name="sc-genai-agents-example-questions"></a>

スキーマ変換、メタデータのインポート、評価など、一部の DMS Schema Conversion オペレーションは非同期的に実行され、時間がかかる場合があります。エージェントが完了をポーリングしている間、ワークフローを中断せずに質問したり、明確化を得たり、追加の指示を行ったりすることができます。

以下のアプローチでは、長時間実行されるオペレーション中にエージェントとやり取りできます。エージェントの機能に基づいてメソッドを選択します。

------
#### [ Ctrl\+C ]

このアプローチは、Kiro CLI、Claude Code、Cursor など、ほとんどの AI エージェントで機能します。

Ctrl\+C を押して、エージェントの進行状況のポーリング中にエージェントを中断します。その後、質問をするか、新しい指示を与えることができます。エージェントは現在のオペレーションを一時停止しますが、サーバー側のオペレーションはキャンセルされません。引き続き実行されます AWS DMS。

エージェントが質問に答えたら、オペレーションステータスの確認を再開するように要求できます。

```
Check if the conversion is done now.
```

------
#### [ Separate session ]

このアプローチは、任意の AI エージェントで機能します。

新しいターミナルタブを開き、別のエージェントセッションを開始します。1 つのセッションを使用してオペレーションを実行し、完了をポーリングし、もう 1 つのセッションを使用して質問やその他の作業を行います。どちらのセッションも、同じ MCP サーバーと AWS リソースにアクセスできます。

------
#### [ Instructing the agent not to poll ]

このアプローチは、任意の AI エージェントで機能します。

オペレーションの完了を待つ代わりに、エージェントにオペレーションを開始してすぐに戻るように指示します。その後、質問をしたり、他の作業を行ったり、準備ができたらステータスを確認したりできます。

プロンプトの例:

```
Start converting the AdventureWorks.dbo schema but don't wait for it to finish. I'll ask you to check the status later.
```

その後、次の操作を行います。

```
Check if the dbo schema conversion is complete.
```

------
#### [ /btw command ]

このアプローチは、Claude Code およびバックグラウンドメッセージをサポートする他のエージェントで使用できます。

を入力し、`/btw`その後に質問を入力して、エージェントの現在のタスクを中断せずにサイドメッセージを送信します。エージェントは質問をバックグラウンドで処理し、完了のためにポーリングを続行します。

例:

```
/btw What action items typically appear for stored procedures?
```

------
#### [ Subagents ]

このアプローチは、Claude Code などのバックグラウンドサブエージェントをサポートするエージェントで使用できます。

バックグラウンドサブエージェントでオペレーションを実行するようにエージェントに指示します。サブエージェントは完了をポーリングしますが、メインセッションは質問やその他の作業に対して無料です。

プロンプトの例:

```
Run the AdventureWorks.dbo schema conversion in a background subagent and let me know when it's done.
```

------