OracleGoldenGateの基本
このブログ投稿では、Oracle®GoldenGate®の基本とその機能について説明します。 GoldenGateはデータベースアーキテクチャから切り離されているため、トランザクション変更のデータキャプチャと統合の異種および同種のリアルタイムキャプチャを容易にします。
OracleGoldenGateの概要
Oracle GoldenGateは、あるデータベースから別のデータベースへのデータの複製、フィルタリング、および変換を可能にするソフトウェア製品です。
これにより、Oracleデータベースとサポートされている他の異種データベース間でのデータの複製が可能になります。
GoldenGateを使用する理由には、次のようなものがあります。
- データの移動はリアルタイムで行われ、待ち時間が短縮されます。
- コミットされたトランザクションのみが移動されるため、一貫性が確保され、パフォーマンスが向上します。
- さまざまなバージョンとリリースのOracleデータベースがサポートされており、さまざまなオペレーティングシステムで実行されているさまざまな異種データベースもサポートされています。
- シンプルなアーキテクチャを使用し、設定も簡単です。
- 基盤となるデータベースとインフラストラクチャのオーバーヘッドを最小限に抑えながら、高いパフォーマンスを発揮します。
GoldenGateを使用して、次のビジネス要件を満たします。
- ビジネスの継続性と高可用性
- 初期の負荷とデータベースの移行、およびダウンタイムなしのアップグレード
- データ統合
- ライブレポート
単純な単方向アーキテクチャからより複雑なピアツーピアアーキテクチャまで、構成できるアーキテクチャは多数あります。次の画像を参照して、GoldenGateでサポートされているさまざまなトポロジを確認してください。
画像ソース: https://www.vitalsofttech.com/goldengate-replication-topologies/
GoldenGate論理アーキテクチャ
次の画像は、このセクションで説明するGoldenGateアーキテクチャのコンポーネントまたはプロセスを示しています。
画像ソース :https://www.vitalsofttech.com/wp-content/uploads/2013/06/GoldenGate-Replication.jpg
マネージャは、他のGoldenGateプロセスを開始するプロセスです。このプロセスは、構成のソースシステムとターゲットシステムの両方で実行する必要があり、他のすべてのGoldenGateプロセスを開始する必要があります。マネージャプロセスは、古い証跡を削除したりファイルを抽出したりして、ディスク領域も割り当てます。 GoldenGateのインストールごとに1つのマネージャープロセスが必要です。
抽出プロセスには、データキャプチャと呼ばれるデータ抽出が含まれます。 inGoldenGate。抽出は、ソースマイニングデータベースに対して実行するように構成されたプロセスです。
Extractは、コミットされたデータモデリング言語(DML)トランザクションとデータ定義言語(DDL)をOracleREDOログからキャプチャする役割を果たします。 Extractは、これらのデータ変更を証跡または抽出ファイルに書き込みます。
証跡は、GoldenGateがキャプチャされた変更を格納するディスク上の一連のファイルであり、データベース変更の継続的な抽出とレプリケーションをサポートします。これらは、OSレベルでのプラットフォームに依存しないバイナリファイルです。
Replicatは、ターゲットデータベースにデータを配信するプロセスです。ターゲットデータベースのトレイルを読み取り、DMLまたはDDL操作を再構築して、それらをターゲットデータベースに適用します。
抽出プロセスでもあるポンププロセスは、GoldenGatesetupではオプションです。このプロセスは、データを含む証跡ファイルをターゲットシステムにコピーします。
抽出ポンプとReplicatプロセスは、それぞれの進行状況を追跡するためにチェックポイントを使用します。このメカニズムは、証跡ファイルから取得または適用されたデータ変更の場所をマークします。これは、プロセスがデータを失うことなく回復する必要がある場合、または障害後の開始点を知る必要がある場合に役立ちます。
コレクタープロセスはターゲットシステムで実行され、ソースデータベースからのデータ変更をターゲットトレイルファイルに書き込みます。これは RMTTRAILと呼ばれます。 。RMTTRAILにコピーする前に 、コレクターはファイルを再構成します。
GoldenGateキャプチャモード
Oracle GoldenGateは、このセクションで説明する次のタイプのキャプチャをサポートしています。
- クラシックキャプチャ
- 統合キャプチャ
クラシックキャプチャは、元のGoldenGateキャプチャメカニズムであり、可能な場合はオンラインREDOログとアーカイブREDOログから直接データを読み取ります。必要に応じて、データベースファイルから追加のデータをフェッチする場合があります。
Oracle GoldenGateバージョン11.2.1で導入された統合キャプチャ(IC)は、Integrated Extract 11.2.x(MOS Note 1411356.1)用の11.2.0.3データベース固有のバンドルパッチを使用して、Oracle11.2.0.3で最初に使用可能でした。 ICは、DataGuardロジカルスタンバイまたはOracleストリームと同様に、ソースシステムまたはダウンストリームのOracleデータベースでログマイニングサーバーを使用します。
ICは、ソースデータベース内に移動した新しい形式の抽出プロセスです。従来の従来の抽出プロセスでは、抽出は実際のデータベースのドメイン外のredoログで機能します。 ICでは、サーバーログマイナープロセスが開始され、すべてのDMLデータとDDLステートメント(作成、変更、削除など)が抽出され、論理変更レコード(LCR)が作成されます。これらのレコードは、GoldenGateメモリプロセスに渡され、GoldenGateメモリプロセスがLCRをローカルトレイルファイルに書き込みます。
GoldenGateReplicatモード
バージョン12.1のリリース前は、Replicatはトランザクションをターゲットデータベースにシリアルに適用していました。並列処理を実現するには、データの適用を高速化し、遅延を減らすために、テーブルを複数の複製に分割する必要がありました。このアプローチの欠点には、複数のレプリケートとトレイルファイルの手動構成、およびレプリケート間で外部キー関係を持つテーブルを分割できないという制限が含まれます。
新しい調整され統合されたReplicatモードは、テーブルを手動で複数のレプリケートに分割することなく、ターゲットデータベースにトランザクションを並行して適用するのに役立ちます。
次のセクションでは、さまざまなReplicatモードについて説明します。
従来のReplicatでは、ターゲットデータベースのチェックポイントがシステムにコミットされたトランザクションとコミットされていないトランザクションを通知します。これは、トランザクションレプリケーションの重要な側面です。
ClassicReplicatには次の特徴があります。
- SQLをシリアルに適用します。
- データベースのバージョンが11.2.0.4未満の場合に使用する必要があります
次の画像は、従来のReplicatを示しています。
画像ソース :https://docs.oracle.com/GoldenGate/1212/gg-winux/GIORA/img/integratedapply.jpg
構成されたReplicatはコーディネーターと呼ばれます。このプロセスは、指定されたスレッド数に基づいて追加の複製を開始します。 Replicat名は5文字に制限されており、スレッド化されたレプリケートには、この名前に3桁の数字が追加されます(たとえば、RGGMA、RGGMA001、RGGMA002など)。コーディネーターはSQLをスレッドに送信します。これは、並行してコミットされていない順序で適用できます。
次の画像は、調整されたReplicatを示しています。
画像ソース :https://www.red-gate.com/simple-talk/sql/oracle/oracle-GoldenGate-12c-new-features-part-2/
統合Replicatには次の特徴があります。
- ソースデータベースのDMLトランザクションを表すLCRを(コミットされた順序で)構築します。 DDLはReplicatによって直接適用されます。これらのトランザクションは並行して適用できます。
- 軽量のストリーミングインターフェイスを使用して、データベースインバウンドサーバーと呼ばれるターゲットデータベースのバックグラウンドプロセスに接続します。
- LCRをインバウンドサーバーに送信します。インバウンドサーバーは、データをターゲットデータベースに適用します。
次の画像は、統合されたReplicatを示しています。
画像ソース :https://docs.oracle.com/GoldenGate/1212/gg-winux/GIORA/process_mode.htm#GIORA212
このブログでは、GoldenGateを使用する方法と理由を説明し、そのアーキテクチャとコンポーネントについて説明しました。また、ツールに組み込まれているキャプチャモードとReplicatモードについても詳しく説明しました。
[フィードバック]タブを使用して、コメントを書き込んだり、質問したりします。
-
Oracle Data GuardFarSync-データ損失ゼロ
このブログでは、Oracle®forDataGuardの機能であるFarSyncについて説明します。 Oracleは、物理的に離れているプライマリデータベースとスタンバイデータベース間の同期REDOトランスポートをサポートするようにこの新しい構成を設計しました。 Oracle 12cのこの手法により、データの損失がゼロになり、任意の距離にあるプライマリデータベースが保護されます。 この機能は、プライマリデータベースからREDOを受け入れ、REDOをスタンバイに送信します。FarSyncインスタンスにはデータファイルが含まれていないため、将来、プライマリまたはスタンバイとして開くことはで
-
透過的なデータ暗号化
Oracle®は、セキュリティの目的でOracle 12Cに透過的データ暗号化(TDE)機能を導入し、ユーザーが機密データのテーブルスペースおよび列レベルの暗号化を有効にできるようにしました。 はじめに データを暗号化すると、許可されたユーザーまたはアプリケーションのみがデータにアクセスできます。 Oracleは、ツールとプロセスを使用してデータベースを認証、承認、監査しますが、データを格納するOSデータファイルは使用しません。 Oracle Database Advanced Security Guide(ASOAG)によると、「TDEはデータファイルに保存されている機密データを暗号化し