DMSタスクのセットアップとフルロード

01

  1. 左ペインからデータベース移行タスクをクリックします。

  2. タスクの作成をクリックしてください。


  1. データ移行タスクの作成で以下の情報を入力してください。

    • タスク識別子: oracle58-postgres58
    • レプリケーションインスタンス: 先ほど作成した dmshandson58 となっているインスタンス
    • ソースデータベースエンドポイント: 先ほど作成した dmshandson58oracle
    • ターゲットデータベースエンドポイント: 先ほど作成した dmshandson58postgres
    • 移行タイプ: 既存のデータを移行して、継続的な変更をレプリケート
    • 作成時にタスクを開始: on
    • CDC 停止モード: カスタム CDC 停止モードを使用しない
    • ターゲット DB で復旧テーブルを作成: off
    • ターゲットテーブル作成モード: 何もしない
    • フルロードの完了後にタスクを停止する: 停止しない
    • レプリケーションに LOB 列を含める: 制限付き LOB モード
    • 最大 LOB サイズ(KB): 32
    • 検証の有効化: on
    • CloudWatch ログを有効化: on

02

  1. テーブルマッピングでは以下の設定を行います。

    • 編集モード: ガイド付き UI
    • 選択ルール: 新しい選択ルールの追加ボタンをクリック

03

  1. スキーマでは以下の設定を行います。

    • スキーマ名: スキーマの入力
    • スキーマ名: DMS_SAMPLE
    • テーブル名: %
    • アクション: 含む
  • 上記の設定でデータ移行対象は DMS_SAMPLE スキーマのテーブルのみになります。

  • 続いて、3 つの変換ルールを設定します。これは、Oracle ではデフォルトでスキーマ、オブジェクト名は大文字ですが、PostgreSQL では小文字であるためスキーマ、オブジェクト名などを小文字に変換するルールとなります。

04

  1. ▶︎ 変換ルールをクリックして展開し、新しい変換ルールの追加ボタンをクリックします。変換ルールにおける%はワイルドカードを意味しています。

    • ターゲット: スキーマ
    • スキーマ名: スキーマの入力
    • スキーマ名: %
    • アクション: 小文字にする
  2. 再度、新しい変換ルールの追加ボタンをクリックします。

    • ターゲット: テーブル
    • スキーマ名: スキーマの入力
    • スキーマ名: %
    • テーブル名: %
    • アクション: 小文字にする
  3. 再度、新しい変換ルールの追加ボタンをクリックします。

    • ターゲット: 列
    • スキーマ名: スキーマの入力
    • スキーマ名: %
    • テーブル名: %
    • 列名: %
    • アクション: 小文字にする

05

  1. 3 つの変換ルールを入力後、タスクの作成ボタンをクリックします。

06

  1. データベース移行タスクの一覧にoracle58-postgres58タスクがステータス起動中として表示されます。

  2. ステータスは準備完了 > 起動中 > 実行中となります。

  3. ステータスが準備完了以降であれば、タスク名をクリックして実行状況を確認することができます。

  4. すべてのテーブルの状態がTable completedになり、ステータス列がロード完了、レプリケーション進行中になっていることを確認します。

ロードが完了するのに 20 分前後かかります。


  1. テーブル統計タブの検証状態列を確認します。

  2. MLB_DATA/NFL_DATA/NFL_STADIUM_DATA はNo primary key、その他のテーブルはValidatedであることを確認します。

  3. 行数の多いテーブルの検証には時間が掛かるため、Pending recordsかもしれません。

  4. Pending recordsの場合、そのまま画面を表示していると検証保留中列の値が徐々に減っていくことが確認できます。

今回、データサイズが大きい SPORTING_EVENT_TICKET はロード状態がTable completedになっていればよく、検証状態がPending recordsであっても次のハンズオンに移って問題ありません。