2 Oracle GoldenGateのスタート・ガイド
Oracle GoldenGateでは、Classic ArchitectureおよびMicroservices Architecture (MA)の2つのアーキテクチャがサポートされます。
-
あるデータベースからデータ・レコードの静的抽出を行い、別のデータベースにそのレコードをロードする場合。
-
ソースとターゲットのデータ一貫性を維持するために、トランザクションデータ操作言語(DML)操作とデータ定義言語(DDL)変更(サポートされるデータベースの場合)を継続的に抽出およびレプリケートする場合。
-
データベースから抽出を行い、データベース以外の場所にあるファイルにレプリケートする場合。
Oracle GoldenGateアーキテクチャの概要
次の表では、2つのOracle GoldenGateアーキテクチャについて説明し、それぞれのアーキテクチャをどのような場合に使用するかを示します。
X | Classic Architecture | Microservices Architecture |
---|---|---|
アーキテクチャの概要 |
Oracle GoldenGate Classic Architectureは、様々なトポロジ間でデータを効率よく移動するために必要なプロセスとファイルを提供します。これらのプロセスとファイルがClassic Architectureの主要コンポーネントを形成します。これは以前のリリースの製品設計でした。 |
Oracle GoldenGate Microservices Architectureは、Oracle GoldenGate環境の一部としてREST対応サービスを提供する新しいマイクロサービス・アーキテクチャです。REST対応サービスでは、HTML5 Webページ、コマンドラインおよびAPIを介して、リモート構成、管理および監視を提供します。 |
使用目的 |
次の目的に対しては、Oracle GoldenGate Classic Architectureを使用するようにOracle GoldenGateをインストールして構成できます。
|
次の用途には、Oracle GoldenGate Microservices Architectureを使用するように、Oracle GoldenGateをインストールして構成できます。
|
サポートされるデータベースについて |
Classic Architectureでは、動作保証マトリックスで示すように、サポート対象のすべてのデータベースがサポートされます。 |
MAでは、Oracleデータベースのみがサポートされます。 |
- Oracle GoldenGateでサポートされる処理方法およびデータベース
- Oracle GoldenGate Classic Architectureのコンポーネント
Oracle GoldenGate Classic Architectureを使用すると、コマンドラインからデータ・レプリケーションを構成して管理できます。 - Oracle GoldenGate Microservices Architectureのコンポーネント
Oracle GoldenGate Microservices Architectureでは、HTMLユーザー・インタフェースを使用してデータ・レプリケーションを構成して管理できます。
Oracle GoldenGateでサポートされる処理方法およびデータベース
Oracle GoldenGateでは、エンタープライズの複数の異機種プラットフォーム間において、トランザクション・レベルでデータを交換および操作できます。トランザクションの整合性を維持したまま、既存インフラストラクチャへのオーバーヘッドを最小限に抑えて、コミットされたトランザクションを移動します。そのモジュール型のアーキテクチャによって、選択したデータ・レコード、トランザクション変更およびDDL(データ定義言語)変更を様々なトポロジ間で柔軟に抽出およびレプリケートできます。
注意:
DDLサポート、トポロジおよび取得または配信の構成はデータベース・タイプごとに異なります。サポートされる機能および構成の詳細は、『Oracle DatabaseのためのOracle GoldenGateの使用』 および『異種データベースのためのOracle GoldenGateの使用』 を参照してください。
この柔軟性と、Oracle GoldenGateのフィルタリング、変換およびカスタム処理の各機能により、次のような多くのビジネス要件に対応できます。
-
ビジネス継続性および高可用性。
-
初期ロードおよびデータベース移行。
-
データ統合。
-
意志決定支援およびデータ・ウェアハウス。
この図は、Oracle GoldenGateでサポートされているトポロジを示しています。
図goldengate_configs2.jpgの説明
次に、サポートされている処理方法のリストを示します。
データベース | ログベース抽出(取得) | 非ログベース抽出(1) (取得) | レプリケーション(配信) |
---|---|---|---|
DB2 for i |
該当なし |
該当なし |
X |
DB2 LUW |
X |
該当なし |
X |
DB2 z/OS |
X |
該当なし |
X |
Oracle Database |
X |
該当なし |
X |
MySQL |
X |
該当なし |
X |
SQL Server |
X |
X |
X |
Informix |
該当なし |
該当なし |
X |
脚注1 非ログベース抽出では、Oracle GoldenGate APIと通信する取得モジュールを使用して、変更データをOracle GoldenGateに送信します。
親トピック: Oracle GoldenGateのスタート・ガイド
Oracle GoldenGate Classic Architectureのコンポーネント
Oracle GoldenGate Classic Architectureを使用すると、コマンドラインからデータ・レプリケーションを構成して管理できます。
注意:
これは基本構成です。ビジネス・ニーズとユースケースに基づいて、このモデルの様々なバリエーションを構成できます。トピック:
- Managerとは
Managerは、Oracle GoldenGateの制御プロセスです。ExtractプロセスまたはReplicatプロセスを開始するには、ManagerがOracle GoldenGate構成内の各システムで実行している必要があります。 - データ・ポンプとは
データ・ポンプは、ソースOracle GoldenGate構成内のセカンダリExtractグループです。 - Collectorとは
Collectorは、Managerプロセスによって開始され、ターゲット・システムのバックグラウンドで実行されるプロセスです。これにより、トランザクション・データはターゲット証跡に再アセンブルされます。 - GGSCIとは
Oracle GoldenGate Software Command Interface (GGSCI)コマンドを使用してデータ・レプリケーションを作成できます。これは、ユーザーとOracle GoldenGate機能コンポーネント間のコマンド・インタフェースです。
親トピック: Oracle GoldenGateのスタート・ガイド
Managerとは
Managerは、Oracle GoldenGateの制御プロセスです。ExtractプロセスまたはReplicatプロセスを開始するには、ManagerがOracle GoldenGate構成内の各システムで実行している必要があります。
また、ExtractプロセスおよびReplicatプロセスが実行している間、Managerはリソース管理機能を実行するために稼働し続ける必要があります。1つのManagerプロセスで、複数のExtractまたはReplicatプロセスを制御できます。
Managerは次の機能を実行します。
-
Oracle GoldenGateプロセスを起動します
-
動的プロセスを起動します
-
プロセスのポート番号を管理します
-
保持ルールに基づいて証跡ファイルを消去します
-
イベント、エラーおよびしきい値レポートを作成します
1つのManagerプロセスで、複数のExtractまたはReplicatプロセスを制御できます。Windowsシステムでは、Managerはサービスとして実行できます。ManagerプロセスとTCP/IP接続の構成の詳細は、https://www.oracle.com/pls/topic/lookup?ctx=en/middleware/goldengate/core/12.3.0.1/ggcon&id=GWUAD-GUID-5005AF6D-76D2-4C72-80E2-AD33C24F0C26を参照してください。
データ・ポンプとは
データ・ポンプは、ソースOracle GoldenGate構成内のセカンダリExtractグループです。
データ・ポンプを構成すると、Extractプロセスは取得したすべての操作をソース・データベースの証跡ファイルに書き込みます。データ・ポンプは、ソース・データベースの証跡ファイルを読み取り、データ操作をターゲット・データベースのリモート証跡ファイルにネットワークを介して送ります。データ・ポンプの構成はオプションですが、ほとんどの構成にお薦めします。データ・ポンプを使用しない場合、Extractは取得したすべての操作をリモート・ターゲット・データベース上の証跡ファイルにストリーミングする必要があります。一方で、データ・ポンプを使用する標準的な構成では、プライマリExtractグループがソース・システムの証跡に書き込みます。データ・ポンプは、この証跡を読み取り、データ操作をネットワーク経由でターゲットのリモート証跡に送信します。データ・ポンプによって、記憶域の柔軟性が向上すると同時に、プライマリExtractプロセスがTCP/IPアクティビティから分離されます。
通常、データ・ポンプでは、データのフィルタリング、マッピングおよび変換を実行できます
-
データ操作の実行: データのフィルタリング、マッピングおよび変換を実行するようにデータ・ポンプを構成できます。
-
データ操作の実行なし: データを操作せずにそのままの状態で単純に転送するパススルー・モードでデータ・ポンプを構成できます。パススルー・モードでは、オブジェクト定義を参照するすべての機能が回避されるため、データ・ポンプのスループットが向上します。
データ・ポンプの構成はオプションですが、ほとんどの構成にお薦めします。データ・ポンプを使用する理由として、次のことがあげられます。
-
ネットワークおよびターゲットの障害に対する保護: ターゲット・システムに証跡のみが存在するOracle GoldenGateの基本構成では、Extractが継続的にメモリーに抽出するデータ操作の格納場所がソース・システム上に存在しません。ネットワークまたはターゲット・システムが使用できなくなると、Extractはメモリーを使い果して異常終了する可能性があります。これに対し、ソース・システムに証跡とデータ・ポンプがあれば、取得データをディスクに移動して、プライマリExtractの異常終了を防ぐことができます。接続が回復されると、データ・ポンプは、ソース証跡からデータを取得して1つ以上のターゲット・システムに送信します。
-
データのフィルタリングまたは変換の複数フェーズによる実装。複雑なフィルタリング構成またはデータ変換構成を使用する場合、データ・ポンプを構成して、最初の変換をソース・システムまたはターゲット・システムのいずれかで(あるいは中間システムで)実行し、別のデータ・ポンプまたはReplicatグループを使用して2番目の変換を実行できます。
-
多くのソースから中央ターゲットへのデータの統合。複数のソース・データベースと中央ターゲット・データベースとを同期する場合、抽出したデータ操作を各ソース・システムに格納し、それらの各システムでデータ・ポンプを使用してターゲット・システムの証跡にデータを送信できます。記憶域の負荷がソース・システムとターゲット・システムで分割されるため、複数のソースから送信されるデータに対応するためにターゲット・システムに大量の領域を用意する必要がなくなります。
-
1つのソースと複数のターゲットの同期。複数のターゲット・システムにデータを送信する場合、ソース・システムで各ターゲット用のデータ・ポンプを構成できます。いずれかのターゲットに対するネットワーク接続が切断されても、他のターゲットにデータを送信できます。
Collectorとは
Collectorは、Managerプロセスによって開始され、ターゲット・システムのバックグラウンドで実行されるプロセスです。これにより、トランザクション・データはターゲット証跡に再アセンブルされます。
ManagerがExtractプロセスから接続リクエストを受信すると、Collectorがスキャンを行って使用可能なポートにバインドし、リクエスト元のExtractプロセスに割り当てるポート番号をManagerに送信します。また、CollectorはExtractプロセスによって送信される取得済データを受信して、そのデータをリモート証跡ファイルに書き込みます。
注意:
Collectorは、必要に応じて手動で実行できます。これは、通常の動的Collectorと対比して、静的Collectorと呼ばれます。複数のExtractプロセスで1つの静的Collectorを共有できますが、1対1の比率が最適です。静的Collectorを使用すると、プロセスを確実に特定のポートで動作させることができます。GGSCIとは
Oracle GoldenGate Software Command Interface (GGSCI)コマンドを使用してデータ・レプリケーションを作成できます。これは、ユーザーとOracle GoldenGate機能コンポーネント間のコマンド・インタフェースです。
GGSCIは、Oracle GoldenGateのコマンドライン・インタフェースです。GGSCIを使用して、Oracle GoldenGateを構成、制御および監視する全種類のコマンドを発行できます。
GGSCIを起動するには、ディレクトリをOracle GoldenGateインストール・ディレクトリに変更してから、ggsci
実行可能ファイルを実行します。
Oracle GoldenGateコマンドの詳細は、『Oracle Fusion Middleware Oracle GoldenGateリファレンス』を参照してください。
Oracle GoldenGate Microservices Architectureのコンポーネント
Oracle GoldenGate Microservices Architectureを使用すると、HTMLユーザー・インタフェースを使用してデータ・レプリケーションを構成および管理できます。
Oracle GoldenGate MAには、5つの主要コンポーネントがあります。次の図は、セキュアなREST API環境内で、どのようにレプリケーション・プロセスが動作するかを示しています。
Oracle GoldenGate MAでは、デプロイメントおよびセキュリティの構成、モニタリング、管理に必要なすべてのツールが提供されます。これは、業界標準のHTTP(s)通信プロトコルおよびJavaScript Object Notation (JSON)データ交換形式を使用して設計されています。さらに、このアーキテクチャでは、基本認証またはSecure Sockets Layerクライアント証明書を使用してクライアントのIDを確認する機能が提供されます。
次の図に、サービス・インタフェースを使用したデプロイメントの管理に使用できる様々なクライアント(Oracle製品、コマンドライン、ブラウザおよびプログラム関連REST APIインタフェース)を示します。
トピック:
- Service Managerとは
Service Managerは、Microservices Architectureで提供される他のサービスの監視役として機能します。 - Administration Serverとは
Administration Serverは、Oracle GoldenGateデプロイメント内で作動しているプロセス(アクティブなプロセスとアクティブでないプロセスの両方)の管理やモニタリングを実行します。 - Distribution Serverとは
Distribution Serverは、分散ネットワーク・デプロイメントでのデータやコマンドの伝達と処理をサポートするために、ネットワーク・データ分散エージェントとして機能するサービスです。これは、複数のコマンドおよび複数のソース証跡ファイルからのデータ・ストリームを同時に処理できる高性能アプリケーションです。 - Receiver Serverとは
Receiver Serverは、受け取るすべての証跡ファイルを処理する中央制御サービスです。これはDistribution Serverと連携して、Classic Architectureのポンプとの互換性をリモート・クラシック・デプロイメントに提供します。 - Performance Metrics Serverとは
Performance Metrics Serverは、メトリック・サービスを使用してインスタンス・デプロイメントのパフォーマンス結果を収集して格納します。このメトリックの収集とリポジトリは、管理レイヤーの情報収集とは別に行われます。 - Admin Clientとは
Admin Clientはコマンドライン・ユーティリティです(クラシックGGSCIユーティリティに似ています)。これは、Oracle GoldenGateを構成、制御および監視するすべてのコマンドを発行するために使用できます。 - Microservices Architecture実装のロードマップ
Microservices Architectureは、REST APIに基づいています。インストールされたMicroservices Architectureには、HTML5インタフェース、REST APIおよびコマンドラインを介してアクセスできます。
親トピック: Oracle GoldenGateのスタート・ガイド
Service Managerとは
Service Managerは、Microservices Architectureで提供される他のサービスの監視役として機能します。
Service Managerを使用すると、1つまたは複数のOracle GoldenGateデプロイメントをローカル・ホストで管理できます。
Service Managerはシステム・サービスとして実行し、デプロイメントのインベントリおよび構成情報を管理します。これにより、複数のローカル・デプロイメントを管理できます。Service Managerを実行して、インスタンスの起動と停止や、デプロイメントおよび他のサービスの問合せを行うことができます。
Administration Serverとは
Administration Serverは、Oracle GoldenGateデプロイメント内で作動しているプロセス(アクティブなプロセスとアクティブでないプロセスの両方)の管理やモニタリングを実行します。
Administration Serverは、Oracle GoldenGateデプロイメントでレプリケーション・コンポーネントを管理するための中央制御エンティティとして機能します。これを使用してローカルのExtractプロセスとReplicatプロセスを作成して管理することができ、Oracle GoldenGateがインストールされているサーバーにアクセスする必要はありません。Administration Serverの重要な機能は、すべてのHTTPまたはHTTPSクライアント(Microservices Architectureサービス・インタフェースまたはPerlやPythonなど他のクライアント)からアクセスできるREST APIサービス・インタフェースです。
また、Admin Clientを使用すると、Administration Serverと直接通信するためにREST APIコールを作成できます。詳細は、「Admin Clientとは」を参照してください
Administration Serverは、Extract、Replicatおよびパスの調整とオーケストレーションを担当して、自動化と運用管理の効率を向上させます。その処理と動作は、発行された問合せとサービス・インタフェースを介して制御されます。これらのインタフェースでは、クライアントが、REST APIインタフェースに対応するREST JSON-RPC呼出しを使用して、Administration Serverに対してコマンドや制御命令を発行できます。
Administration Serverには埋込みWebアプリケーションが含まれており、すべてのWebブラウザで直接使用できます。クライアント・ソフトウェアをインストールする必要はありません。
Administration Serverを使用して次の作成と管理を行います。
-
ExtractプロセスおよびReplicatプロセス
-
追加、変更および削除
-
登録および登録解除
-
起動および停止
-
プロセスの情報、統計、レポートおよびステータス(LAGとチェックポイントを含む)の確認
-
レポートの取得およびファイルの破棄
-
-
構成(パラメータ)ファイル
-
チェックポイント、トレースおよびハートビート表
-
プロシージャ・レプリケーション、スキーマおよび表のサプリメンタル・ロギング
-
カスタム・タスクおよび標準タスク(自動再起動や証跡の消去)
-
資格証明ストア
-
暗号化キー(
MASTERKEY
) -
ユーザーの追加およびロールの割当て
Distribution Serverとは
Distribution Serverは、分散デプロイメントでのデータやコマンドの伝達と処理をサポートするために、ネットワーク・データ分散エージェントとして機能するサービスです。これは、複数のコマンドおよび複数のソース証跡ファイルからのデータ・ストリームを同時に処理できる高性能アプリケーションです。
Distribution Serverは、ソース側にある複数のデータ・ポンプ(クラシック)を1つのインスタンス・サービスで置き換えます。このサーバーは、1つまたは複数の証跡を1つまたは複数の宛先に配布し、軽量フィルタリングのみ(変換なし)を提供します。
複数の通信プロトコルを使用できるため、パスごとにネットワーク・パラメータをチューニングすることができます。次のプロトコルが含まれます。
-
Oracle GoldenGateプロトコル: サービスベースではない(クラシック)ターゲットでのDistribution ServerとCollectorの間の通信用。内部互換性のために使用されます。
注意:
TCP暗号化は、ClassicとMicroservicesアーキテクチャのマイクロサービス・アーキテクチャの混合環境では機能しません。Microservices ArchitectureのDistribution Serverは、デプロイメント内で実行しているClassic ArchitectureのServer Collectorとの通信に、TCP暗号化を使用するように構成することはできません。また、Microservices ArchitectureのReceiver Serverは、デプロイメント内で実行している
RMTHOST ... ENCRYPT
パラメータで構成されたClassic Architectureのデータ・ポンプからの接続リクエストを受け入れることができません。 -
WebSocket: SSLセキュリティに依存するHTTPSベースのストリーミング用。
-
UDT: ワイド・エリア・ネットワーク用。
-
クラウド環境のプロキシ・サポート:
-
SOCKS5: 任意のネットワーク・プロトコル。
-
HTTP: HTTPタイプのプロトコルのみ(WebSocketを含む)。
-
-
パッシブDistribution Server: リモート・サイトからパス作成を開始します。パスはソースから宛先へのレプリケーション構成ですが、このリリースには含まれません。
注意:
このサービスによるコンテンツの変換はありません。
Receiver Serverとは
Receiver Serverは、受け取るすべての証跡ファイルを処理する中央制御サービスです。これはDistribution Serverと連携して、Classic Architectureのポンプとの互換性をリモート・クラシック・デプロイメントに提供します。
Receiver Serverは、ターゲット側にある複数の個別のCollectorを1つのインスタンス・サービスによって置き換えます。
Receiver Serverを使用して次を行います。
-
パス・イベントの監視
-
受信パスのステータスの問合せ
-
受信パスの統計の表示
-
パスの問題の診断
WebSocketは、デフォルトでHTTPSによって開始される全二重ストリーミング・プロトコルであり、Receiver Serverによって使用されます。SSLセキュリティを使用してデータを完全に保護することができます。Receiver Serverは、図2-1に示すようにHTTPのフォワードおよびリバース・プロキシ・サーバーをシームレスに移動できます。
図2-1 Receiver Serverの通信
さらに、Receiver Serverでは次のプロトコルもサポートされます。
-
UDT: ワイド・エリア・ネットワーク用のUDPベースのプロトコル。詳細は、http://udt.sourceforge.net/を参照してください。
-
クラシックOracle GoldenGateプロトコル: Distribution ServerがCollectorと通信し、データ・ポンプがReceiver Serverと通信するためのクラシック・デプロイメント用。
注意:
TCP暗号化は、ClassicとMicroservicesアーキテクチャのマイクロサービス・アーキテクチャの混合環境では機能しません。Microservices ArchitectureのDistribution Serverは、デプロイメント内で実行しているClassic ArchitectureのServer Collectorとの通信に、TCP暗号化を使用するように構成することはできません。また、Microservices ArchitectureのReceiver Serverは、デプロイメント内で実行しているRMTHOST ... ENCRYPT
パラメータで構成されたClassic Architectureのデータ・ポンプからの接続リクエストを受け入れることができません。
Performance Metrics Serverとは
Performance Metrics Serverは、メトリック・サービスを使用してインスタンス・デプロイメントのパフォーマンス結果を収集して格納します。このメトリックの収集とリポジトリは、管理レイヤーの情報収集とは別に行われます。
他の埋込みWebアプリケーションを使用してパフォーマンス・メトリックをモニタリングし、そのデータを使用して最高のパフォーマンスを得られるようにデプロイメントをチューニングすることができます。すべてのOracle GoldenGateプロセスは、メトリックをPerformance Metrics Serverに送信します。Performance Metrics ServerはMicroservices ArchitectureとClassic Architectureの両方で使用できます。
Performance Metrics Serverを使用して次を行います。
-
様々なメトリックの問合せと、サービスのJSON形式またはクラシックXML形式でのレスポンスの受取り
-
サードパーティのメトリック・ツールの統合
-
エラー・ログの表示
-
アクティブなプロセス・ステータスの表示
-
システム・リソース使用率のモニタリング
Admin Clientとは
Admin Clientはコマンドライン・ユーティリティです(クラシックGGSCIユーティリティに似ています)。これは、Oracle GoldenGateを構成、制御および監視するすべてのコマンドを発行するために使用できます。
注意:
OGG_HOME
、OGG_VAR_HOME
およびOGG_ETC_HOME
が環境で正しく設定されていることを確認してください。
環境変数の詳細は、環境変数の設定に関する項を参照してください。
Admin Clientを使用する方法は、MA設計のサポートと似ていますが異なる部分もあります。
表2-1 Admin Client操作とGGSCI操作
GGSCI | Admin Client |
---|---|
ローカル・デプロイメントに接続 |
任意のMAデプロイメントに接続 |
ローカル・マシン・アクセス(通常はSSH)が必要 |
HTTPまたはHTTPSアクセスが必要 |
アプリケーション・ロジックがローカルで実行 |
アプリケーション・ロジックがリモートで実行 |
DBMSへの接続が必要 |
DBMSへの接続は不要 |
オペレーティング・システムのセキュリティを使用 |
MAのセキュリティを使用 |
認証と認可は1回 |
操作のたびに認証と認可 |
特別接続セマンティクスなし |
|
|
|
|
|
セキュアでない通信 |
SSLを使用した暗号化通信 |
ポンプ・プロセスを使用 |
Distribution Serverを使用 |
Admin Clientは、GGSCIを基盤として設計されています。次の表に、Admin Clientの新しいコマンド、削除されたコマンドおよび非推奨になったコマンドを示します。
表2-2 Admin Clientのコマンド
新しいコマンド | 削除されたコマンドおよびプロセス: | 非推奨になったコマンド |
---|---|---|
CONNECT DISCONNECT [START | STATUS | STOP] SERVICE [ADD | ALTER | DELETE | INFO | [KILL START | STATS | STOP] [EDIT | VIEW] GLOBALS CD |
* MGR * JAGENT * CREATE DATASTORE SUBDIRS FC DUMPDDL INFO MARKER |
ADD CREDENTIALSTORE [CREATE | OPEN] WALLET |
Microservices Architecture実装のロードマップ
Microservices ArchitectureはREST APIに基づいています。インストールされたMicroservices Architectureには、HTML5インタフェース、REST APIおよびコマンドラインを介してアクセスできます。
-
Oracle GoldenGate Microservices Architectureの接続先となるデータベース。
-
Oracle GoldenGateユーザーを構成する必要があります。
このトピックでは、Microservices Architectureのコンポーネントとクライアントを実装するためのロードマップを説明します。
表2-3 Oracle GoldenGate Microservices Architectureの実装のロードマップ
タスク | 詳細情報 |
---|---|
MAのインストール |
|
Service Managerの起動 |
Service Managerの接続方法に関する項 |
サーバーの起動 |
|
(オプション)Admin Clientの起動 |
Admin Clientの使用方法に関する項 |