AWS SCT ユーザーインターフェイスの使用 - AWS Schema Conversion Tool

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

AWS SCT ユーザーインターフェイスの使用

以下のトピックは、AWS SCT ユーザーインターフェイスの操作に役立ちます。AWS SCT のインストールの詳細については、「のインストール、検証、更新 AWS SCT」を参照してください。

AWS SCT プロジェクトウィンドウ

以下の図に示しているのは、スキーマ移行プロジェクトを作成してスキーマを変換するときに使用する、AWS SCT のセクションです。

  1. 左のパネルでは、ソースデータベースのスキーマがツリービューで表示されます。データベーススキーマは "遅延ロード" されます。つまり、ツリービューから項目を選択すると、AWS SCT では、ソースデータベースの現在のスキーマが取得されて表示されます。

  2. 上中央のパネルでは、ターゲットデータベースエンジンに自動変換できなかったソースデータベースエンジンのスキーマ要素について、アクション項目が表示されます。

  3. 右のパネルでは、ターゲット DB インスタンスのスキーマがツリービューで表示されます。データベーススキーマは "遅延ロード" されます。つまり、ツリービューから項目を選択した時点で、AWS SCT では、ターゲットデータベースの現在のスキーマが取得されて表示されます。

AWS SCT プロジェクトウィンドウ
  1. 左下のパネルでは、スキーマ要素を選択すると、プロパティが表示されます。このプロパティには、ソーススキーマ要素と、ソースデータベースでその要素を作成するための SQL コマンドが記述されています。

  2. 右下のパネルでは、スキーマ要素を選択すると、プロパティが表示されます。このプロパティには、ターゲットスキーマ要素と、ターゲットデータベースでその要素を作成するための SQL コマンドが記述されています。この SQL コマンドを編集し、更新したコマンドをプロジェクトで保存できます。

AWS SCT の起動

AWS Schema Conversion Tool を起動するには、アプリケーションアイコンをダブルクリックします。

AWS SCT プロジェクトの作成

以下の手順に従って AWS Schema Conversion Tool プロジェクトを作成します。

プロジェクトを作成するには
  1. AWS Schema Conversion Tool を開始します。

  2. [ファイル] メニューで [新しいプロジェクト] を選択します。[新しいプロジェクト] ダイアログボックスが表示されます。

    [New Project] (新しいプロジェクト) ダイアログボックス
  3. コンピュータにローカルに保存されているプロジェクトの名前を入力します。

  4. ローカルプロジェクトファイルの場所を入力します。

  5. OK を選択して、AWS SCT プロジェクトを作成します。

  6. [Add source] (ソースの追加) を選択して、新しいソースデータベースをAWS SCT プロジェクトに追加します。AWS SCT プロジェクトには、複数のソースデータベースを追加できます。

  7. [Add target] (ターゲットの追加) を選択して、新しいターゲットプラットフォームを AWS SCT プロジェクトに追加します。AWS SCT プロジェクトには、複数のターゲットプラットフォームを追加できます。

  8. 左側のパネルでソースデータベーススキーマを選択します。

  9. 右側のパネルでは、選択したソーススキーマのターゲットデータベースプラットフォームを指定します。

  10. [Create mapping] (マッピングの作成) を選択します。このボタンは、ソースデータベーススキーマとターゲットデータベースプラットフォームを選択するとアクティブになります。詳細については、「マッピングルールの作成」を参照してください。

これで、AWS SCT プロジェクトが設定されました。プロジェクトの保存、データベース移行評価レポートの作成、ソースデータベーススキーマの変換を行うことができます。

AWS SCT での新しいプロジェクトウィザードの使用

「新規プロジェクト」ウィザードを使用して、新しいデータベース移行プロジェクトを作成できます。このウィザードは、移行ターゲットを決定したり、データベースに接続したりするのに役立ちます。サポートされているすべてのターゲット宛先について、移行がどれほど複雑になるかを推定します。ウィザードを実行すると、AWS SCT でデータベースを別のターゲット移行先に移行するための概要レポートが作成されます。このレポートを使用して、ターゲットとなる可能性のある移行先を比較し、最適な移行パスを選択できます。

新しいプロジェクトウィザードを実行するには
  1. ソースデータベースを選択します。

    1. AWS Schema Conversion Tool を開始します。

    2. [ファイル] メニューで [新しいプロジェクト] を選択します。[データベース移行プロジェクトの新規作成] ダイアログボックスが開きます。

    3. ソースデータベース接続情報を入力するには、以下の手順に従います。

      パラメータ

      アクション

      [Project name] (プロジェクト名)

      コンピュータにローカルに保存されているプロジェクトの名前を入力します。

      場所

      ローカルプロジェクトファイルの場所を入力します。

      ソースタイプ

      SQL データベースNoSQL データベース、または ETL のいずれかのオプションを選択します。

      すべての移行先を含むサマリーレポートを見たい場合は、[SQL Database] を選択してください。

      Source engine

      ソースデータベースエンジンを選択します。

      移行戦略

      以下のオプションのいずれかを選択します。

      • [エンジンを切り替えてクラウド向けに最適化する] — このオプションはソースデータベースを新しいデータベースエンジンに変換します。

      • [同じエンジンを維持しながらクラウド向けに最適化する] — このオプションでは、データベースエンジンをそのまま使用したまま、データベースをオンプレミスからクラウドに移行します。

      • [データベースエンジンの切り替えとクラウドの最適化をまとめたレポートを見る] — このオプションでは、利用可能なすべての移行オプションの移行の複雑さを比較しています。

      すべての移行先を含む集計評価レポートを見る場合は、最後のオプションを選択してください。

    4. [Next] (次へ) をクリックします。[ソースデータベースへの接続] ページが開きます。

  2. ソースデータベースに接続します。

    1. ソースデータベースには接続情報を指定します。接続パラメータはソースデータベースエンジンによって異なります。ソースデータベースの分析に使用するユーザーに、適切な権限があることを確認してください。詳細については、「AWS SCT のソース」を参照してください。

    2. [Next] (次へ) をクリックします。[スキーマの選択] ページが開きます。

  3. データベーススキーマを選択します。

    1. 評価するスキーマの名前のチェックボックスをオンにし、スキーマ自体を選択します。選択するとスキーマ名が青く強調表示され、[次へ] ボタンが使用可能になります。

      新しいプロジェクトウィザードで、データベーススキーマを 1 つ選択します。
    2. 複数のデータベーススキーマを評価する場合は、すべてのスキーマのチェックボックスを選択し、親ノードを選択します。評価を成功させるには、親ノードを選択する必要があります。たとえば、ソース SQL Server データベースの場合は、[データベース] ノードを選択します。親ノードの名前が青く強調表示され、[次へ] ボタンが使用可能になります。

      新しいプロジェクトウィザードで複数のデータベーススキーマを選択します。
    3. [次へ] を選択します。AWS SCT はソースデータベーススキーマを分析し、データベース移行評価レポートを作成します。ソースデータベーススキーマ内のデータベースオブジェクトの数は、評価の実行にかかる時間に影響します。完了すると、[データベース移行評価の実行] ページが開きます。

  4. データベース移行評価を実行します。

    1. さまざまな移行ターゲットの評価レポートを確認して比較したり、評価レポートファイルのローカルコピーを保存してさらに分析したりできます。

    2. データベース移行評価レポートのローカルコピーを保存します。[保存] を選択し、ファイルを保存するフォルダへのパスを入力して [保存] を選択します。AWS SCT は、評価レポートファイルを指定したフォルダに保存します。

    3. [Next] (次へ) をクリックします。[ターゲットの選択] ページが開きます。

  5. ターゲットデータベースを選択します。

    1. [ターゲットエンジン] では、評価レポートに基づいて使用することを決定したターゲットデータベースエンジンを選択します。

    2. ターゲットデータベースの接続情報を指定します。表示される接続パラメータは、選択したターゲットデータベースエンジンによって異なります。ターゲットデータベースに指定したユーザーに、必要な権限があることを確認してください。必要な許可の詳細については、AWS SCT のソース および ターゲットとしての Amazon Redshift の許可 のターゲットデータベースの許可について説明しているセクションを参照してください。

    3. [終了] を選択します。AWS SCT はプロジェクトを作成し、マッピングルールを追加します。詳細については、「マッピングルールの作成」を参照してください。

これで、AWS SCT プロジェクトを使用してソースデータベースオブジェクトを変換できます。

AWS SCT プロジェクトの保存とオープン

以下の手順に従って AWS Schema Conversion Tool プロジェクトを保存します。

プロジェクトを保存するには
  1. AWS Schema Conversion Tool を開始します。

  2. [File] (ファイル) メニューで [Save Project] (プロジェクトの保存) を選択します。

    AWS SCT が、プロジェクトの作成時に指定したフォルダにプロジェクトを保存します。

以下の手順に従って、既存の AWS Schema Conversion Tool プロジェクトを開きます。

プロジェクトを開くには
  1. [File] (ファイル) メニューで、[Open project] (プロジェクトを開く) を選択します。[Open] (開く) ダイアログボックスが表示されます。

  2. プロジェクトフォルダを選択し、Windows スクリプトコンポーネント (*.sct) ファイルを選択します。

  3. AWS SCT はプロジェクトを開きますが、移行元のデータベースと移行先のデータベースには接続しません。データベーススキーマツリーの最上部にある [サーバーに接続] を選択して、ソースデータベースとターゲットデータベースに接続します。

AWS SCT バージョン 1.0.655 以前で保存したプロジェクトを開くと、AWS SCT は、すべてのソースデータベーススキーマのターゲットデータベースプラットフォームに対するマッピングルールを自動的に作成します。他のターゲットデータベースプラットフォームを追加するには、既存のマッピングルールを削除してから、新しいマッピングルールを作成します。マッピングルールの作成に関する詳細については、AWS SCT でのマッピングルールの作成 を参照してください。

AWS SCT プロジェクトへのデータベースサーバーの追加

複数のソースとターゲットデータベースサーバーを AWS Schema Conversion Tool プロジェクトに追加することができます。

プロジェクトにサーバーを追加するには
  1. AWS Schema Conversion Tool を開始します。

  2. 新しいプロジェクトを作成するか、既存のプロジェクトを開きます。

  3. メニューから [Add source] (ソースの追加) を選択し、新しいソースデータベースを追加します。

  4. データベースプラットフォームを選択し、データベース接続の認証情報を指定します。ソースデータベースへの接続に関する詳細については、AWS SCT のソース を参照してください。

以下の手順を使用して、 ソースデータベースに接続します。

データベースに接続するには
  1. データベースサーバーのコンテキスト (右クリック) メニューを開き、[Establish connection] (接続を確立する) を選択します。

    データベーススキーマツリーの最上部で [サーバーに接続] を選択することもできます。

  2. パスワードを入力して、ソースデータベースサーバーに接続します。

  3. [接続のテスト] を選択して、AWS SCT がソースデータベースに正常に接続できることを確認します。

  4. [Connect] (接続) を選択して、ソースデータベースに接続します。

次の手順を使用して、AWS SCT プロジェクトからデータベースサーバーを削除します。

データベースサーバーを削除するには
  1. 削除するデータベースサーバーを選択します。

  2. コンテキスト (右クリック) メニューを開き、[Remove from project] (プロジェクトから削除) を選択します。

    AWS SCT の結果、選択したデータベースサーバー、このサーバーに関連するすべてのマッピングルール、変換結果、およびその他のメタデータが削除されます。

AWS SCT のオフラインモードでの実行

AWS Schema Conversion Tool をオフラインモードで実行できます。以下では、ソースデータベースに接続していないときに既存の AWS SCT プロジェクトを使用する方法について説明します。

次の操作を実行するのに、AWS SCT をソースデータベースに接続する必要はありません。

  • マッピングルールを追加します。

  • データベース移行評価レポートを作成します。

  • データベーススキーマとコードを変換します。

  • ソースと変換したコードを編集します。

  • ソースと変換したコードを SQL スクリプトとしてテキストファイルに保存します。

AWS SCT をオフラインモードで使用する前に、ソースデータベースに接続し、メタデータを読み込み、プロジェクトを保存してください。このプロジェクトを開くか、ソースデータベースサーバーとの接続を切断して、AWS SCT をオフラインモードで使用します。

AWS SCT をオフラインモードで実行するには
  1. AWS Schema Conversion Tool を起動して新しいプロジェクトを作成します。詳細については、「AWS SCT プロジェクトの作成」を参照してください。

  2. ソースデータベースサーバーを追加し、ソースデータベースに接続します。詳細については、「AWS SCT プロジェクトへのデータベースサーバーの追加」を参照してください。

  3. ターゲットデータベースサーバーを追加するか、仮想ターゲットデータベースプラットフォームを使用します。詳細については、「仮想ターゲットの使用」を参照してください。

  4. ソースデータベースのターゲットデータベースプラットフォームを定義するマッピングルールを作成します。詳細については、「AWS SCT でのマッピングルールの作成」を参照してください。

  5. [ビュー]、[メインビュー] の順に選択します。

  6. ソースデータベースのオブジェクトを表示する左のパネルで、ソースデータベースのスキーマを選択します。オブジェクトのコンテキスト (右クリック) メニューを開き、[スキーマの変換] を選択します。この操作により、すべてのソーススキーマのメタデータが AWS SCT プロジェクトにロードされます。

    [レポートの作成] 操作と [スキーマの変換] 操作では、すべてのソーススキーマのメタデータも AWS SCT プロジェクトに読み込まれます。コンテキストメニューからこれらの操作のいずれかを実行した場合は、[スキーマのロード] 操作をスキップしてください。

  7. [ファイル] メニューで [プロジェクトを保存] を選択し、ソースデータベースのメタデータをプロジェクトに保存します。

  8. [サーバーから切断] を選択して、ソースデータベースから切断します。これで、AWS SCT をオフラインモードで使用できるようになりました。

AWS SCT ツリーフィルターの使用

AWS SCT は、ソースからターゲットにデータを移行する場合、すべてのメタデータをソースおよびターゲットデータベースからツリー構造内にロードします。この構造は、AWS SCT のメインプロジェクトウィンドウにツリービューとして表示されます。

一部のデータベースは、ツリー構造内のオブジェクト数が非常に多くなる場合があります。ツリーフィルタAWS SCTを使用すると、ソースおよびターゲットツリー構造内のオブジェクトを検索できます。ツリーフィルタでは、オブジェクトは変更されません。データベースの変換に伴ってオブジェクトが変換される場合とは異なります。フィルターは、ツリー内の表示のみを変更します。

ツリーフィルターは、AWS SCT でロード済みのオブジェクトを対象とします。つまり、検索中は AWS SCT でデータベースからオブジェクトがロードされません。そのため、通常、ツリー構造内のオブジェクト数はデータベース内のオブジェクト数より少なくなります。

ツリーフィルタについては、以下の点に注意してください。

  • フィルタのデフォルトは ANY です。このフィルタでは、名前の検索を使用してオブジェクトを見つけます。

  • オブジェクトタイプを選択すると、選択したタイプのオブジェクトのみが表示されます。

  • フィルタマスクを使用すると、さまざまなタイプの記号 (Unicode、スペース、特殊文字など) を表示できます。「%」文字は、あらゆる記号のワイルドカードです。

  • フィルタを適用すると、フィルタしたオブジェクトの数のみがカウントに表示されます。

ツリーフィルタを作成するには
  1. 既存の AWS SCT プロジェクトを開きます。

  2. ツリーフィルターを適用するデータベースに接続します。

  3. フィルタアイコンを選択します。

    スキーマツリーのフィルターアイコン

    フィルタを元に戻すアイコンは、現在適用されているフィルタがないため、灰色で表示されます。

  4. [Filter] (フィルター) ダイアログボックスに、以下の情報を入力します。ダイアログボックスのオプションは、データベースエンジンごとに異なります。

    AWS SCT フィルターオプション

    アクション

    [レベル]

    [Categories] (カテゴリー) を選択して、オブジェクトをカテゴリ別にフィルター処理します。

    [Statuses] (ステータス) を選択して、オブジェクトをステータス別にフィルター処理します。

    タイプ

    [Level] (レベル) の[Categories] (カテゴリー) の場合、フィルター処理されたオブジェクトのカテゴリーを選択します。[Any loaded] (任意のロード済み) をクリックして、すべてのカテゴリーのオブジェクトを表示します。

    [Level] (レベル) の[Statuses] (ステータス) の場合、フィルター処理されたオブジェクトのステータスを選択します。次のオプションのいずれかを選択します。

    • [Converted] (変換済み) で、変換されたすべてのオブジェクトを表示

    • [Has actions] (アクションあり) で、変換上の問題があるすべてのオブジェクトを表示

    • [Encrypted] (暗号済み) で暗号化されたすべてのオブジェクトを表示

    条件

    [Level] (レベル) の [Categories] (カテゴリー) の場合、[Like] (次のパターンと一致する) および [Not like] (次のパターンと一致しない) のいずれかのフィルター条件を選択します。

    [Level] (レベル) の [Statuses] (ステータス) の場合、フィルター条件オプションは使用できません。

    [Level] (レベル) の [Categories] (カテゴリー) の場合、ツリーをフィルター処理する[Value] (値) を入力します。

    パーセント (%) をワイルドカードとして使用すると、すべてのオブジェクトが表示されます。

    [Level] (レベル) の [Statuses] (ステータス) の場合、True または False の [Value] (値) を選択します。

    And/Or

    AND または OR の論理演算子を選択して、複数のフィルター句を適用します。

    スキーマツリーのフィルターアイコン
  5. [Add new clause] (新しい句を追加) を選択して、さらにフィルター句を追加します。AWS SCT では、複数の AND または OR 論理演算子を使用して、複数のフィルター句を適用できます。

  6. [Apply] (適用) を選択します。[Apply] (適用) を選択すると、フィルタを元に戻すアイコン (フィルタアイコンの横) が有効になります。適用したフィルタを削除する場合は、このアイコンを使用します。

  7. [Close] (閉じる) を選択してダイアログボックスを閉じます。

ツリーに表示されるスキーマをフィルタリングする場合、スキーマを変換するときに変換されるオブジェクトは変更されません。フィルタにより、ツリー内の表示が変更されるのみです。

ツリーフィルターのファイルリストのインポート

セミコロン区切りを含むカンマ区切り値 (CSV) ファイル、またはツリー フィルターで使用する名前または値を含む JSON ファイルをインポートできます。既存の AWS SCT プロジェクトを開き、ツリーフィルターを適用するデータベースに接続して、フィルターアイコンを選択します。

ファイル例をダウンロードするには、[Download template] (テンプレートのダウンロード) を選択します。ファイルの名前を入力し、[保存] を選択します。

既存のフィルター設定をダウンロードするには、[Export] (エクスポート) を選択します。ファイルの名前を入力し、[保存] を選択します。

ツリーフィルターのファイルリストをインポートするには、[Import] (インポート) を選択します。インポートするファイルを選択し、[Open] (開く) を選択します。[Apply] (適用)、[Close] (終了) の順に選択します。

CSV ファイルでは区切り文字としてセミコロンが使用され、次の形式になっています。

  • object_type は、検索するオブジェクトのタイプです。

  • database_name は、このオブジェクトがあるデータベースの名前です。

  • schema_name は、このオブジェクトがあるスキーマの名前です。

  • object_name は、オブジェクト名です。

  • import_type は、この項目をフィルターから include または exclude するかどうかを指定します。

JSON ファイルを使用して、ネスト化されたルールなどの複雑なフィルタリングケースを記述します。JSON ファイルの形式は次の通りです。

  • filterGroupType は、複数のフィルタ句に適用されるフィルタールールのタイプ (AND または OR 論理演算子)です。

  • filterCategory は、フィルターのレベルです ([Categories] (カテゴリー) または [Statuses] (ステータス))。

  • names は、[Categories] (カテゴリー) フィルターに適用されるオブジェクト名のリストです。

  • filterCondition は [Categories] (カテゴリー) フィルターに適用されるフィルター条件 (LIKE または NOT LIKE) です。

  • transformName は、[Status] (ステータス) フィルターに適用されるステータス名です。

  • value は、ツリーをフィルター処理する値です。

  • transformValue は [Status] (ステータス) フィルターに適用されるフィルターの値 (TRUE または FALSE) です。

AWS SCT ツリービューのスキーマの非表示

ツリービューの設定では、AWS SCT ツリービューに表示するスキーマとデータベースを指定します。空のスキーマ、空のデータベース、システムデータベース、ユーザー定義のデータベースやスキーマは、非表示にすることができます。

ツリービューのデータベースやスキーマを非表示にするには
  1. AWS SCT プロジェクトを開きます。

  2. ツリービューで表示するデータストアに接続します。

  3. [Settings] (設定)、[Global Settings] (グローバル設定)、[Tree View] (ツリービュー) の順に選択します。

    [Global Settings] (グローバル設定) ダイアログボックスの [Tree View Settings] (ツリービューの設定) セクション
  4. [Tree View Settings] (ツリービューの設定) セクションで、以下の操作を行います。

    • [Vendor] (ベンダー) で、データベースプラットフォームを選択します。

    • [Hide empty schemas] (空のスキーマを非表示にする) をクリックして、選択したデータベースプラットフォームの空のスキーマを非表示にします。

    • [Hide empty databases] (空のデータベースを非表示にする) をクリックして、選択したデータベースプラットフォームの空のデータベースを非表示にします。

    • [Hide System Databases/Schemas] (システムデータベース/スキーマを非表示にする) で、非表示にするシステムデータベースやスキーマの名前を選択します。

    • [Hide User Defined Databases/Schemas] (ユーザー定義のデータベース/スキーマを非表示にする) で、非表示にするユーザー定義のスキーマやデータベースの名前を入力し、[Add] (追加) を選択します。名前の大文字と小文字は区別されません。

  5. [OK] をクリックします。

データベース移行評価レポートの作成と確認

データベース移行評価レポートには、ターゲットとなる Amazon RDS DB インスタンスのエンジン用に自動変換できないスキーマに対するすべてのアクション項目が、要約されて表示されます。また、ターゲット DB インスタンス用の同等のコードを記述するのにかかる推定労力も示されます。

ソースデータベースとターゲットプラットフォームをプロジェクトに追加し、マッピングルールを指定した後、データベース移行評価レポートを作成できます。

データベース移行評価レポートを作成および表示するには
  1. 評価レポートを作成するソースデータベーススキーマのマッピングルールを作成したことを確認してください。詳細については、「新しいマッピングルールの追加」を参照してください。

  2. [View] (ビュー) メニューで、[Main View] (メインビュー) を選択します。

  3. ソースデータベースのスキーマを表示する左のパネルで、評価レポートを作成するスキーマオブジェクトを選択します。

    評価レポートを作成するすべてのスキーマオブジェクトのチェックボックスがオンになっていることを確認してください。

  4. オブジェクトのコンテキスト (右クリック) メニューを開き、[レポートの作成] を選択します。

    データベース移行評価レポートの作成

    評価レポートビューが開きます。

  5. [アクション項目] タブを選択します。

    [アクション項目] タブには、自動変換できないスキーマについて説明する項目のリストが表示されます。リストからいずれかのアクション項目を選択します。アクション項目が適用されるスキーマが AWS SCT によってハイライトされます。

    [Action Items] (アクション項目) タブ
  6. [Summary] (概要) タブを選択します。

    [Summary] (概要) タブには、データベース移行評価レポートの要約が表示されます。そのタブには、自動変換された項目の数と自動変換されなかった項目の数が示されます。要約には、ターゲット DB インスタンスで、ソースデータベースのものと同等のスキーマを作成するのにかかる推定時間も示されます。

    [License Evaluation and Cloud Support] (ライセンス評価およびクラウドサポート) セクションには、同エンジンを実行する Amazon RDS DB インスタンスへの既存のオンプレミスのデータベーススキーマの移動に関する情報が含まれます。例えば、ライセンスタイプを変更する場合は、このレポートセクションを確認することで、現在のデータベースから削除する必要のある機能を見極めることができます。

    評価レポートの要約のサンプルを以下に表示します。

    評価レポートの概要
  7. [Summary] (概要) タブ、[Save to PDF] (PDF に保存) の順に選択します。データベース移行評価レポートは PDF ファイルとして保存されます。PDF ファイルには、要約とアクション項目の情報の両方が含まれます。

    [CSV に保存] を選択して、レポートをカンマ区切り値 (CSV) ファイルとして保存することもできます。このオプションを選択すると、AWS SCT で 3 つの CSV ファイルが作成されます。これらのファイルには、次の情報が含まれています。

    • 推奨されるアクションが含まれる変換アクション項目のリスト。

    • 変換アクション項目の概要と、そのアクション項目の発生を変換するために必要となる労力の見積もり。

    • 変換にかかる予測推定時間別に分類された多数のアクション項目が含まれるエグゼクティブサマリー。

    データベース移行評価レポート

スキーマの変換

ソースとターゲットのデータベースをプロジェクトに追加し、マッピングルールを作成した後、ソースデータベーススキーマを変換できます。以下の手順を使用して、スキーマを変換します。

スキーマを変換するには
  1. [ビュー]、[メインビュー] の順に選択します。

    メインビューの選択
  2. ソースデータベースのスキーマが表示される左側のパネルで、変換するオブジェクトの名前のチェックボックスをオンにします。次に、このオブジェクトを選択します。AWS SCT はオブジェクト名を青で強調表示します。オブジェクトのコンテキスト (右クリック) メニューを開き、[スキーマの変換] を選択します。

    複数のデータベースオブジェクトを変換するには、すべてのオブジェクトのチェックボックスを選択します。次に、親ノードを選択します。たとえば、テーブルの場合、親ノードは [テーブル] です。AWS SCT で親ノードの名前が青色で強調表示されていることを確認してください。オブジェクトのコンテキスト (右クリック) メニューを開き、[スキーマの変換] を選択します。

    スキーマの変換
  3. AWS SCT でスキーマの変換が終了すると、プロジェクトの右のパネルでスキーマの候補が表示されます。

    この時点で、スキーマはターゲットのデータベースインスタンスには適用されていません。計画したスキーマはプロジェクトの一部です。変換されたスキーマ項目を選択すると、ターゲットのデータベースインスタンスの下中央のパネルに、計画したスキーマコマンドが表示されます。

    このウィンドウでスキーマを編集できます。変換されたスキーマの適用を選択すると、編集したスキーマはプロジェクトの一部として保存され、ターゲットのデータベースインスタンスに書き込まれます。

    変換されたスキーマの表示

ターゲット DB インスタンスへの変換されたスキーマの適用

変換されたデータベーススキーマをターゲット DB インスタンスに適用できます。スキーマがターゲット DB インスタンスに適用されたら、データベース移行評価レポートのアクション項目に基づいてスキーマを更新できます。

警告

この手順により、既存のターゲットスキーマは上書きされます。意図せずスキーマを上書きしないように注意してください。ターゲット DB インスタンスのスキーマに変更を加えている場合、その変更も上書きされます。

変換されたデータベーススキーマをターゲットのデータベースインスタンスに適用するには
  1. プロジェクトの右側のパネルの上部にある [サーバーに接続] を選択して、ターゲットデータベースに接続します。ターゲットデータベースに接続している場合は、この手順をスキップしてください。

  2. ターゲット DB インスタンスに計画したスキーマを表示するスキーマ要素を、プロジェクトの右パネルで選択します。

  3. スキーマ要素のコンテキスト (右クリック) メニューを開き、[Apply to database] (データベースに適用) を選択します。

    [Apply to database] (データベースに適用)

    変換されたスキーマがターゲット DB インスタンスに適用されます。

AWS サービスプロファイルの AWS SCT への保存

AWS SCT に AWS の認証情報を保存できます。AWS SCT では、AWS のサービスと統合されている機能を使用するときに、認証情報を使用します。たとえば、AWS SCT は Amazon S3、AWS Lambda、Amazon Relational Database Service (Amazon RDS)、AWS Database Migration Service (AWS DMS) と統合します。

認証情報が必要な機能にアクセスすると、AWS SCT より AWS 認証情報を求められます。認証情報はグローバルアプリケーション設定で保存できます。保存された認証情報は、AWS SCT の認証情報入力画面で選択できます。

グローバルアプリケーション設定では、別の組み合わせの AWS 認証情報を保存することもできます。例えば、テストシナリオで使用する認証情報とは別に、運用シナリオで使用する認証情報を保存できます。また、AWS リージョン ごとに異なる認証情報を保存することもできます。

AWS 認証情報の保存

AWS 認証情報をグローバルに保存するには、以下の手順を行います。

AWS 認証情報を保存するには
  1. AWS Schema Conversion Tool を開始します。

  2. [設定] メニューを開き、[グローバル設定] を選択します。[Global settings] (グローバル設定) ダイアログボックスが表示されます。

  3. [AWSサービスプロファイル] を選択し、[AWS新しいサービスプロファイルの追加] を選択します。

  4. 次のように AWS 情報を入力します。

    AWS SCT オプション

    アクション

    プロファイル名

    プロファイルの名前を入力します。

    [AWS アクセスキー]

    AWS アクセスキーを入力します。

    AWS シークレットキー

    AWS シークレットアクセスキーを入力します。AWS アクセスキーの詳細については、『IAM ユーザーガイド』の「IAM ユーザー」の「アクセスキーの管理」を参照してください。

    地域

    AWS リージョン でプロファイルを選択します。

    [Amazon S3 バケットフォルダ]

    プロファイルで [Amazon S3 bucket] ( Amazon S3 バケット) を選択します。Amazon S3 に接続する機能を使用する場合に限り、バケットを指定する必要があります。必要な権限の詳細については、「AWS サービスプロファイルを使用するための権限」を参照してください。

    連邦情報処理標準 (FIPS) のセキュリティ要件に準拠する場合は、[Use FIPS endpoint for S3] (S3に FIPS エンドポイントを使用) を選択します。FIPS エンドポイントは、以下の AWS リージョンで利用できます。

    • US East (N. Virginia) Region

    • US East (Ohio) Region

    • 米国西部 (北カリフォルニア) リージョン

    • 米国西部 (オレゴン) リージョン

  5. [テスト接続] を選択して、認証情報が正しくアクティブであることを確認します。

    [テスト接続] ダイアログボックスが表示されます。プロファイルに接続されたサービスのそれぞれについて、ステータスを確認できます。[Pass] (パス) は、プロファイルが正常にサービスにアクセスできることを示します。

    テスト接続ダイアログボックス
  6. プロファイルを設定したら、[Save] (保存) を選択してプロファイルを保存します。変更をキャンセルする場合は、[Cancel] (キャンセル) を選択します。

  7. [OK] を選択し、[グローバル設定] ダイアログボックスを閉じます。

プロジェクトのデフォルトプロファイルの設定

AWS SCT プロジェクトのデフォルトプロファイルを設定できます。この関連付けを行うと、プロファイルに保存されている AWS 認証情報がプロジェクトに関連付けられます。プロジェクトが開いたら、次の手順でデフォルトプロファイルを設定します。

プロジェクトのデフォルトプロファイルを設定するには
  1. AWS Schema Conversion Tool を起動して新しいプロジェクトを作成します。

  2. [Settings] (設定) メニューから [Project settings] (プロジェクト設定) を選択します。[Project settings] (プロジェクト設定) ダイアログボックスが表示されます。

  3. [プロジェクト環境] タブを選択します。

  4. [新しいAWS サービスプロファイルの追加] をクリックして、新しいプロファイルを追加します。[AWS サービスプロファイル] で、プロジェクトと関連付けるプロファイルを選択します。

  5. [OK] を選択し、[Project settings] (プロジェクト設定) ダイアログボックスを閉じます。変更をキャンセルする場合は、[Cancel] (キャンセル) を選択します。

AWS サービスプロファイルを使用するための権限

AWS サービスプロファイルから Amazon S3 バケットにアクセスするには、以下の権限が必要です。

  • s3:PutObject — Amazon S3 バケットにオブジェクトを追加します。

  • s3:DeleteObject — オブジェクトの null バージョンを削除し、削除マーカーを挿入します。これがオブジェクトの現在のバージョンになります。

  • s3:ListBucket — Amazon S3 バケットから最大 1,000 個のオブジェクトを返します。

  • s3:GetObject — Amazon S3 バケットからオブジェクトを取得できます。

次に、ユーザーにアクセス許可を付与するコード例を示します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:DeleteObject", "s3:GetObject", "s3:ListBucket", "s3:PutObject" ], "Resource": [ "*" ] } ] }

AWS Secrets Manager を使用する

AWS SCT は、ユーザーが AWS Secrets Manager に保存したデータベース認証情報を使用できます。Secrets Manager のデータベース接続ダイアログボックスにすべての値を入力できます。Secrets Manager を使用するには、必ず AWS プロファイルを AWS Schema Conversion Tool に保存してください。

AWS Secrets Manager の詳細については、『AWS Secrets Manager ユーザーガイド』の「AWS Secrets Manager とは」を参照してください。AWS プロファイルの詳細については、「AWS サービスプロファイルの AWS SCT への保存」を参照してください。

Secrets Manager からデータベース認証情報を取得するには
  1. AWS Schema Conversion Tool を起動して新しいプロジェクトを作成します。

  2. [ソースの追加] または [ターゲットの追加] を選択して、新しいソースデータベースを プロジェクトに追加します。

  3. データベースプラットフォームを選択し、[次へ] を選択します。

  4. [AWS シークレット] で、使用するシークレットを選択します。

  5. [入力] を選択します。次に、AWS SCT はデータベース接続ダイアログボックスにすべての値を入力します。

  6. [接続のテスト] を選択して、AWS SCT がデータベースに正常に接続できることを確認します。

  7. [接続] を選択して、データベースに接続します。

AWS SCT は、次の構造を持つシークレットをサポートします。

{ "username": "secret_user", "password": "secret_password", "engine": "oracle", "host": "secret_host.eu-west-1.compute.amazonaws.com", "port": "1521", "dbname": "ora_db" }

この構造では、usernamepassword の値は必須で、その他の値はすべてオプションです。Secrets Manager に保存する値には、すべてのデータベース認証情報が含まれていることを確認してください。

データベースパスワードの保存

データベースパスワードまたは SSL 証明書を AWS SCT キャッシュに保存できます。パスワードを保存するには、接続の作成時に [Store Password] (パスワードの保存) を選択します。

パスワードは、ランダムに生成されたトークンを使用して seed.dat ファイルに暗号化されます。次に、パスワードはユーザー名と共にキャッシュファイルに保存されます。seed.dat ファイルを失うか、破損した場合、データベースパスワードの暗号化が正しく解除されない可能性があります。この場合、接続は失敗します。

パーティション分割されたテーブルでのプロジェクトの Union All ビューの使用

ソーステーブルがパーティション分割されている場合、AWS SCT はn 個のターゲットテーブルを作成します (但し、n はソーステーブルのパーティション数)。AWS SCT は、ターゲットテーブルの上に UNION ALL ビューを作成して、ソーステーブルを表示します。AWS SCT データ抽出プログラムを使用してデータを移行すると、ソーステーブルのパーティションが抽出され、個々のサブタスクによって並列にロードされます。

プロジェクトで Union All ビューを使用するには
  1. AWS SCT を起動します。新しいプロジェクトを作成するか、既存の AWS SCT プロジェクトを開きます。

  2. [Settings] (設定) メニューを開き、[Global Settings] (グローバル設定) を選択します。

  3. 上部にあるリストから、OLAP データベースのペアを選択します。

  4. [Union all ビューを使用しますか?] をオンにします。

    変換設定
  5. [OK] を選択して設定を保存し、[Current project settings] (現在のプロジェクト設定) ダイアログボックスを閉じます。

AWS SCT のキーボードショートカット

AWS SCT で使用できるキーボードショートカットは次のとおりです。

キーボードショートカット 説明

Ctrl+N

新しいプロジェクトを作成します。

Ctrl+O

既存のプロジェクトを開きます。

Ctrl+S

開いているプロジェクトを保存します。

Ctrl+W

ウィザードを使用して新しいプロジェクトを作成します。

Ctrl+M

新しいマルチサーバー評価を作成します。

Ctrl+L

新しいソースデータベースを追加します。

Ctrl+R

新しいターゲットデータベースを追加します。

Ctrl+F4

開いているプロジェクトを閉じます。

F1

AWS SCT ユーザーガイドを開きます。