翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
DMS Schema Conversion のメタデータモデル
DMS Schema Conversion を使用する場合、サービスはデータベーススキーマを階層ツリーとして表します。このツリーはメタデータツリーと呼ばれ、ソーススキーマとターゲットスキーマの両方に適用されます。ルート要素 (「サーバー」) を含むツリー内の各要素はメタデータモデルです。
メタデータツリーには 2 種類の要素が含まれています。
-
オブジェクト — テーブル、関数、ビュー、シーケンス、インデックスなどの実際のデータベースオブジェクトを表します。DescribeMetadataModel リクエストを使用して、オブジェクトの SQL 定義を取得できます。
-
カテゴリ — 「スキーマ」、「テーブル」、「機能」、「インデックス」などの仮想グループ化コンテナ。カテゴリは、ナビゲーションのためにツリー内のオブジェクトを整理しますが、SQL 定義自体はありません。
メタデータツリーは、リクエストした場合にのみデータをロードします。このアプローチはオンデマンドロード (遅延ロードとも呼ばれます) と呼ばれます。つまり、DMS Schema Conversion は必要に応じてデータベースからデータを取得します。インポートオペレーションを使用してメタデータをロードします。特定のメタデータモデルを更新するか、サブツリー全体を一度にインポートします。評価や変換などのオペレーションでも、メタデータツリーが自動的にロードされます。
メタデータモデルの仕組み
DMS Schema Conversion のメタデータモデルは、オペレーションのライフサイクルに従います。メタデータツリーを変更するオペレーション (インポートや変換など) は非同期です。これらのオペレーションのリクエストを開始し、バックグラウンドで実行されます。対応する describe API を呼び出して、リクエストのステータスを確認します。ツリーを読み取るオペレーション (子や定義の記述など) は同期されます。
注記
DMS Schema Conversion では、オペレーションとリクエストという用語は同じ意味で使用されます。
一般的なワークフローには、以下のステップが含まれます。
-
インポート — ソースデータベースまたはターゲットデータベースからメタデータツリーにメタデータをロードします。初期メタデータモデルをロードするか、データベースから既存のモデルを再ロードできます。詳細については、「ツリーを移動する」を参照してください。API リファレンスについては、StartMetadataModelImport」を参照してください。
-
評価 — 選択したソースメタデータモデルを分析して、変換の複雑さと潜在的な問題を特定します。詳細については、「DMS Schema Conversion でのデータベース移行評価レポートの作成」を参照してください。
-
変換 — 選択したソースメタデータモデルをターゲット互換形式に変換します。変換された定義は、ターゲットメタデータツリーの一部として保存されます。詳細については、「DMS Schema Conversion でのデータベーススキーマの変換: step-by-stepガイド」を参照してください。
-
エクスポート — メタデータ定義を保存します。ソースメタデータとターゲットメタデータの両方を SQL スクリプトとして Amazon S3 バケットにエクスポートできます。非仮想ターゲットの場合、変換されたオブジェクトをターゲットデータベースに直接適用することもできます。仮想ターゲットの詳細については、「」を参照してください仮想データプロバイダー。変換されたオブジェクトの適用の詳細については、「」を参照してください変換したコードの適用。
ソースメタデータモデルを評価または変換したら、評価レポートを生成して結果を確認できます。詳細については、「DMS Schema Conversion でのデータベース移行評価レポートの作成」を参照してください。
サポートされている移行ペアについては、StartMetadataModelCreation を使用して SQL 定義からカスタムステートメントメタデータモデルを作成することもできます。詳細については、「ステートメントモデルを作成する」を参照してください。
メタデータモデルツリーを操作する
メタデータツリーは、次の API リクエストを使用してナビゲートできます。
-
DescribeMetadataModelChildren — 特定のメタデータモデルの子を返します。各子には、次の呼び出しに渡すことができる選択ルール (特定のメタデータモデルを識別するフィルター) が含まれており、より深く掘り下げることができます。
-
DescribeMetadataModel — 特定のメタデータモデルの名前、タイプ、SQL 定義を返します。
どちらのリクエストにも Originパラメータ (SOURCE または TARGET) が必要で、選択ルールを使用してメタデータモデルを識別します。ナビゲーションパターンは、ソースツリーとターゲットツリーの両方で同じです。選択ルールの形式の詳細については、「」を参照してくださいDMS Schema Conversion の選択ルール。
任意のインターフェイスを選択して、ナビゲーション手順を表示します。
ステートメントメタデータモデルを作成する
注記
ステートメントの作成は現在、SQL Server から Aurora PostgreSQL へ、または SQL Server から Amazon RDS for PostgreSQL への指示のみをサポートしています。
StartMetadataModelCreation を使用して、SQL 定義からステートメントメタデータモデルを作成できます。これは、アプリケーションクエリやアドホック SQL コードなど、ソースデータベースにオブジェクトとして存在しない SQL ステートメントを変換する場合に便利です。