すべてのプロダクト
Search
ドキュメントセンター

Data Transmission Service:自己管理 Oracle データベースから DataHub プロジェクトへのデータ同期

最終更新日:Mar 28, 2026

Data Transmission Service (DTS) を使用して、自己管理 Oracle データベースから DataHub プロジェクトへ変更データを継続的に同期します。DTS はスキーマ同期、完全データ同期、および増分データ同期をサポートしているため、ダウンタイムなしで Oracle の変更を DataHub へストリーミング開始できます。

本シナリオにおける DTS の対応機能

機能対応状況備考
スキーマ同期はいテーブルのみ対応。トリガーは非対応
完全データ同期はい無料
増分データ同期(CDC)はい課金対象。詳細については、「課金
DML:INSERT、UPDATE、DELETEはい
DDL:CREATE/ALTER/DROP TABLE、VIEW、PROCEDURE、FUNCTION、TRIGGER、INDEX;RENAME TABLE;TRUNCATE TABLEはい
一対一同期はい
一対多同期はい
多対一同期はい
カスケード同期はい
外部キー同期いいえソース側でのカスケード操作および削除操作は、宛先に伝播されません。

前提条件

開始する前に、以下の条件を満たしていることを確認してください。

  • Oracle バージョン 9i、10g、11g、12c、18c、または 19c の自己管理 Oracle データベース

  • Oracle データベースが ARCHIVELOG モードで実行されており、アーカイブログファイルにアクセス可能であること、および適切な保持期間が設定されていること。詳細については、「アーカイブ・リドログ・ファイルの管理」をご参照ください。

  • Oracle データベースで補足ログが有効化されており、SUPPLEMENTAL_LOG_DATA_PK および SUPPLEMENTAL_LOG_DATA_UI の両方が Yes に設定されていること。アラート通知設定。詳細については、「補足ログ」をご参照ください。

  • 同期データを受信するための DataHub プロジェクトが作成済みであること。詳細については、「DataHub の使い始め」および「プロジェクトの管理」をご参照ください。

  • 細かい権限を持つ Oracle ソースデータベースのデータベースアカウント。詳細については、「データベースアカウントの準備」をご参照ください。

  • DTS の Oracle 同期機能の機能と制限について理解していること。データベース評価には Advanced Database & Application Migration(ADAM)を使用し、クラウドへのデータ同期をスムーズに実行できるようにします。「Oracle データベースの準備」および「概要」をご参照ください。

  • タスク構成を開始する前に、以下の情報をあらかじめご準備ください。

    • Oracle ホストの IP アドレスまたは ECS インスタンス ID、ポート(デフォルト:1521)、SID またはサービス名

    • Oracle データベースアカウントの認証情報

    • DataHub プロジェクト名およびリージョン

重要

Oracle から増分データを同期するには、アーカイブログと補足ログの両方を有効にする必要があります。詳細については、「Oracle データベースの設定」をご参照ください。

課金

同期タイプ料金
スキーマ同期および完全データ同期無料
増分データ同期課金対象。詳細については、「課金概要

制限事項

DTS はソースデータベースの外部キーを同期しません。ソース側でのカスケード操作および削除操作は、宛先に伝播されません。

一般的な制限事項

  • テーブルには PRIMARY KEY または UNIQUE 制約が必要であり、すべてのフィールドが一意である必要があります。これを満たさない場合、宛先に重複レコードが生成される可能性があります。

  • Oracle 12c 以降では、テーブル名は 30 バイトを超えてはなりません。

  • 個別のテーブルを同期対象として選択し、宛先でそれらのテーブル名またはカラム名を変更する予定がある場合、1 つのタスクで最大 1,000 個のテーブルをサポートします。1,000 個を超えるテーブルを同期する場合は、複数のタスクを構成するか、データベース全体を同期してください。

  • スキーマ同期はテーブルのみをサポートします。DTS はトリガーのスキーマ同期をサポートしていません。

    警告

    データの不整合を防ぐため、タスクを開始する前にソースデータベースからトリガーを削除してください。 詳細については、「トリガーを含むソースデータベースのデータ同期または移行タスクを設定する」をご参照ください。

  • 同期対象として選択できるのはテーブルのみです。

  • 宛先の DataHub プロジェクトにおける単一文字列は、2 MB を超えてはなりません。

  • 同期中は、DTS を通じてのみ宛先へデータを書き込むようにしてください。他のツールを用いた書き込みは、特に DMS オンライン DDL 操作を使用している場合、データの不整合や損失を引き起こす可能性があります。

  • DTS は、最新の同期レコードのタイムスタンプと現在のソースタイムスタンプとの差分に基づいて同期遅延を算出します。ソースで長期間 DML 操作が行われていない場合、報告される遅延値は不正確になる可能性があります。遅延値を更新するには、ソースで DML 操作を実行してください。データベース全体を同期する場合は、毎秒データを受信するハートビートテーブルを作成してください。

Oracle RAC データベースの制限事項

  • ソースが Express Connect 経由で接続された Oracle Real Application Clusters(RAC)データベースの場合、タスク構成時に仮想 IP(VIP)を指定してください。

  • タスク構成時には VIP のみを使用し、Single Client Access Name(SCAN)IP は使用しないでください。VIP を指定した後は、ノードフェイルオーバーはサポートされません。

  • タスク実行中にプライマリ/セカンダリ スイッチオーバーを実行しないでください。実行するとタスクが失敗します。

増分データ同期の制限事項

  • ソースでリドログおよびアーカイブログが有効化されている必要があります。また、以下の最小保持期間を満たす必要があります。DTS が必要とするログが利用できない場合、タスクが失敗したり、データの不整合や損失が発生したりする可能性があります。完全データ同期完了後は、保持期間を 24 時間以上に短縮できます。

    • 増分同期のみの場合:ログを 24 時間以上保持

    • 完全データ同期後に増分同期を行う場合:ログを最低 7 日間保持

    ログ保持要件は、DTS のサービスレベルアグリーメント(SLA)の一部です。該当要件を満たさない場合、DTS はサービスの信頼性およびパフォーマンスを保証できません。
  • 増分同期中に、Oracle Data Pump を使用してソースへデータを書き込まないでください。これによりデータ損失が発生する可能性があります。

  • 同期中に LONGTEXT フィールドを更新しないでください。更新するとタスクが失敗します。

  • スキーマ同期中に、データベースまたはテーブルのスキーマを変更する DDL 操作を実行しないでください。実行するとタスクが失敗します。

  • ソースに VARCHAR2 型の空文字列が含まれており、対応する宛先カラムに非 NULL 制約が設定されている場合、タスクが失敗します。Oracle では VARCHAR2 の空文字列は NULL 値として処理されます。

同期タスクの作成

ステップ 1:タスク作成ウィザードの起動

  1. Data Management(DMS)コンソールにログインします。新 DTS コンソールのデータ同期タスクページ

  2. 上部のナビゲーションバーで、Data + AI をクリックします。

  3. 左側のナビゲーションウィンドウで、DTS(DTS)データ同期 を選択します。

    ナビゲーションオプションは、DMS コンソールのモードおよびレイアウトによって異なる場合があります。「シンプルモード」および「DMS コンソールのレイアウトとスタイルのカスタマイズ」をご参照ください。また、「新しい DTS コンソールのデータ同期タスクページ」に直接アクセスすることもできます。
  4. データ同期インスタンスが配置されているリージョンを選択します。

    新 DTS コンソールでは、上部のナビゲーションバーでリージョンを選択します。
  5. [作成] をクリックします。

ステップ 2:ソースおよび宛先の構成

ウィザード内で、以下のパラメーターを使用してソースおよび宛先データベースを構成します。

セクションパラメーター説明
該当なしタスク名DTS タスクの名前です。DTS が自動的に名前を生成しますが、タスクを識別しやすくするために、意味のある名前を指定することを推奨します。名前は一意である必要はありません。
ソースデータベースデータベースタイプOracle を選択します。
アクセス方法ソースデータベースへのアクセス方法です。本例では、ECS 上の自己管理データベース を使用します。自己管理データベースのデプロイについては、「事前準備の概要」をご参照ください。
インスタンスリージョン自己管理 Oracle データベースが配置されているリージョンです。
ECS インスタンス IDOracle データベースをホストする Elastic Compute Service(ECS)インスタンスの ID です。
ポート番号Oracle データベースのサービスポートです。デフォルト値:1521
Oracle タイプアーキテクチャタイプです。本例では RAC または PDB インスタンス を使用します。RAC でないインスタンス を選択すると SID パラメーターを構成でき、RAC または PDB インスタンス を選択すると サービス名 パラメーターを構成できます。
データベースアカウントソース Oracle データベースのデータベースアカウントです。
データベースパスワードデータベースアカウントのパスワードです。
宛先データベースデータベースタイプDataHub を選択します。
アクセス方法Alibaba Cloud インスタンス を選択します。
インスタンスリージョン宛先 DataHub プロジェクトが配置されているリージョンです。
プロジェクトDataHub プロジェクトの名前です。

[接続性のテストと続行] をクリックします。

DTS は、Alibaba Cloud データベースインスタンスおよび ECS でホストされるデータベースのセキュリティ設定に、自動的にその CIDR ブロックを追加します。データセンター内またはサードパーティのクラウドプロバイダーから提供される自己管理データベースの場合は、DTS の CIDR ブロックをデータベースの許可リストに手動で追加する必要があります。詳細については、「DTS サーバーの CIDR ブロックを追加する」をご参照ください。

警告

DTS の CIDR ブロックを許可リストまたはセキュリティグループに追加することは、潜在的なセキュリティリスクを伴います。実行前に、アカウントの認証情報を強化し、公開ポートを制限し、API 呼び出しを検証し、許可リストのエントリを定期的に監査してください。さらに高いセキュリティを確保するには、Express Connect、VPN Gateway、または Smart Access Gateway を介してデータベースを DTS に接続することを推奨します。

ステップ 3:同期対象および設定の選択

以下のパラメーターを構成します。

パラメーター説明
同期タイプデフォルトでは 増分データ同期 が選択されています。また、スキーマ同期 も選択してください。事前チェック後に、DTS は選択された対象から既存のすべてのデータを同期し、その後の増分同期のベースラインとします。
追加カラムの命名規則DTS が DataHub トピックへ書き込む際に、追加カラムが挿入されます。これらのカラム名が既存のカラム名と競合する場合、タスクは失敗します。要件に応じて、新規ルール または 従来のルール を設定してください。このパラメーターを設定する前に、競合がないか確認してください。「追加カラムの命名規則」をご参照ください。
競合テーブルの処理モード事前チェックとエラー報告オブジェクト名のマッピング:開始前に、ソースと宛先で同名のテーブルが存在するかをチェックします。重複が見つかると、事前チェックは失敗し、タスクは開始できません。宛先テーブルを削除せずに解決するには、オブジェクト名マッピングを使用してください。「」をご参照ください。エラーを無視して続行:重複名のチェックをスキップします。スキーマが一致し、レコードのプライマリキーまたは一意キーの値が同一の場合、完全同期では既存の宛先レコードを保持し、増分同期では上書きします。スキーマが異なる場合、一部のカラムが同期されなかったり、タスクが失敗したりする可能性があります。
宛先インスタンスでのオブジェクト名の大文字化宛先におけるデータベース名、テーブル名、および列名の大文字小文字を制御します。デフォルト: [DTS デフォルトポリシー]。詳細については、「宛先インスタンスにおけるオブジェクト名の大文字小文字の指定」をご参照ください。
ソースオブジェクトソースオブジェクト リストから 1 つ以上のテーブルを選択し、向右 をクリックして 選択済みオブジェクト リストに移動します。テーブルのみ選択可能です。
選択済みオブジェクト同期前に単一オブジェクトの名前を変更するには、そのオブジェクトを右クリックします。「単一オブジェクトの名前のマッピング」をご参照ください。複数のオブジェクトを一度に名前変更するには、右上隅の 一括編集 をクリックします。「複数のオブジェクト名を一度にマッピング」をご参照ください。個別のテーブルを同期する際に、条件で行をフィルターするには、オブジェクトを右クリックして WHERE 条件を設定します。「フィルター条件の設定」をご参照ください。シャードキーを設定するには、オブジェクトを右クリックし、すべてのテーブルを同期 をクリアします。データベース名のマッピングはサポートされていません。テーブルまたはカラムの名前を変更した場合、依存する他のオブジェクトが同期に失敗する可能性があります。
説明

    ステップ 4:高度な設定の構成

    [次へ:高度な設定] をクリックし、以下のパラメーターを構成します。

    パラメーター説明
    タスクスケジューリング専用クラスターデフォルトでは、DTS はタスクを共有クラスターにスケジュールします。タスクの安定性を高めるには、専用クラスターをご購入ください。詳細については、「DTS 専用クラスターとは」をご参照ください。
    接続失敗時の再試行時間ソースまたは宛先が到達不能になった場合の DTS の再試行時間です。有効範囲:10~1440 分。デフォルト:720 分。このパラメーターは 30 分より大きい値に設定することを推奨します。この時間枠内に再接続されればタスクは再開されますが、それ以外の場合は失敗します。複数のタスクが同じソースまたは宛先を共有する場合、最も短い再試行時間枠が適用されます。再試行中は、DTS インスタンスの課金が継続されます。
    その他の問題発生時の再試行時間タスク開始後に DDL または DML 操作が失敗した場合の DTS の再試行時間です。有効範囲:1~1440 分。デフォルト:10 分。このパラメーターは 10 分より大きい値に設定することを推奨します。また、接続失敗時の再試行時間 よりも短い値にする必要があります。
    完全データ移行の負荷制御を有効化完全データ同期中の宛先データベースサーバーへの負荷を制限します。ソースデータベースへの QPS(1 秒あたりのクエリ数)完全データ移行の RPS、および 完全移行のデータ移行速度(MB/秒) を構成します。このパラメーターは、完全データ同期 が選択されている場合にのみ表示されます。
    増分データ同期の負荷制御を有効化増分同期中の負荷を制限します。増分データ同期の RPS および 増分同期のデータ同期速度(MB/秒) を構成します。
    環境タグDTS インスタンスを識別するためのタグです。要件に応じてタグを選択してください。
    実際の書き込みコード宛先へ書き込まれるデータのエンコード形式です。
    ETL の構成ETL (抽出・変換・書き出し) 機能を有効にするかどうかを指定します。[はい] を選択すると、コードエディタでデータ処理文を入力できます。詳細については、「データ移行またはデータ同期タスクでの ETL 設定」をご参照ください。[いいえ] を選択すると、ETL をスキップします。
    モニタリングとアラートタスクの失敗またはしきい値を超える遅延に対するアラートを設定するかどうかを指定します。[はい]を選択して、アラートのしきい値と通知先連絡先を設定します。「DTS タスクを作成するときにモニタリングとアラートを設定する」をご参照ください。

    ステップ 5:事前チェックの実行とインスタンスの購入

    1. タスク設定を保存し、事前チェックを実行します。

      • このタスクの API パラメーターをプレビューするには、[次へ:タスク設定の保存と事前チェック] にカーソルを合わせ、[OpenAPI パラメーターのプレビュー] をクリックします。

      • [次へ:タスク設定の保存と事前チェック] をクリックして続行します。

      DTS はタスク開始前に事前チェックを実行します。事前チェックに合格した場合にのみタスクを開始できます。事前チェックが失敗した場合は、各失敗項目の横にある [詳細の表示] をクリックし、問題を修正して再び事前チェックを実行してください。無視可能な項目でアラートが発生した場合は、[アラートの詳細の確認] をクリックし、次に [無視]、そして [OK] をクリックして、再度事前チェックを実行してください。アラートを無視すると、データの不整合が発生する可能性があります。
    2. 成功確率100% に達するまで待機し、[次へ:インスタンスの購入] をクリックします。

    3. 購入 ページで、以下のパラメーターを構成します。

      パラメーター説明
      課金方法サブスクリプション:あらかじめ一定期間分の料金を前払いします。長期利用の場合、コスト効率に優れています。従量課金:1 時間単位で課金されます。短期利用に適しています。インスタンスが不要になったら、すぐにリリースして課金を停止してください。
      リソースグループ設定インスタンスに割り当てるリソースグループです。デフォルト:デフォルトリソースグループ。詳細については、「Resource Management とは
      インスタンスクラスDTS インスタンスのクラスによって、同期速度が異なります。詳細については、「データ同期インスタンスのインスタンスクラス」をご参照ください。
      サブスクリプション期間サブスクリプション課金でのみ利用可能です。1~9 ヶ月、または 1 年、2 年、3 年、5 年から選択できます。
    4. Data Transmission Service(従量課金)利用規約 を読み、同意してください。

    5. [購入して開始] をクリックし、ダイアログボックスで [OK] をクリックします。

    タスクがタスクリストに表示されます。そこで進行状況を監視できます。