Oracle JSON Relational DualityおよびGoldenGateデータ・ストリームを使用したビジネス・オブジェクトのレプリケート
Oracle GoldenGate 26aiでは、イベントベースのpub/subアーキテクチャでフル機能のビジネス・オブジェクトのレプリケーションが導入されました。
イベントベースのpub/subアーキテクチャでのフル機能のビジネス・オブジェクトのレプリケーションは、Oracle AI DatabaseのJSONリレーショナル二面性ビューとOracle GoldenGateデータ・ストリームという2つの新しいOracleテクノロジ機能を組み合せることで実装されます。
Oracle AI Database 26ai JSONリレーショナル二面性ビューを使用すると、開発者はリレーショナル・データをJSONドキュメント・モデルとして簡単に消費できます。これにより、JSONドキュメントを使用する利点およびリレーショナル・モデルの利点が結合され、それぞれの制限が回避されます。Oracle JSONリレーショナル二面性ビューは、基本的に、構造化されたリレーショナル形式でJSONデータを表示するSQLビューです。
Oracle JSON Relational DualityおよびGoldenGate Data Streamsを使用してビジネス・オブジェクトをレプリケートすると、データ製品に優先順位が付けられ、データ・オブジェクトの一意性を確保することで、アプリケーション、トランザクション・ファブリック、データ/イベント・メッシュおよびデータ・ファブリックの信頼できる唯一の情報源となります。
このトピックでは、GoldenGateデータ・ストリームでOracle JSON Relational Dualityビューを使用する利点について説明し、Oracle JSON Relational DualityビューでGoldenGateデータ・ストリームを構成するステップを示します。
GoldenGateデータ・ストリームでJSON二面性ビューを使用する利点
Oracle JSON Relational DualityおよびGoldenGateデータ・ストリームを使用してビジネス・オブジェクトをレプリケートすると、データ製品に優先順位が付けられ、データ・オブジェクトの一意性を確保することで、アプリケーション、トランザクション・ファブリック、データ/イベント・メッシュおよびデータ・ファブリックの信頼できる唯一の情報源になります。
次のワークフロー図は、Oracle GoldenGateデータ・ストリームでJSON二面性ビューを使用する場合のアーキテクチャを示しています。

このモデルを使用する戦略的利点は次のとおりです。
-
インピーダンスの不一致の克服: JSON二面性ビューでは、データは正規化された表の下(原子性の保持)に1回のみ格納され、アプリケーション・オブジェクトはJSONデータ・オブジェクトと連携します。このように、ビジネス・オブジェクトは、JSONオブジェクトの形式でOracle JSON二面性ビューのデータ製品を管理します。Oracle GoldenGateは、JSON二面性ビューからJSONベースのデータ・オブジェクトを取得し、イベントをAsyncAPIチャネルに公開して、データ・コンシューマをサブスクライブできるようにします。JSON二面性ビューとOracle GoldenGateの統合は、データ・プロデューサとデータ・コンシューマの両方のデータ製品が1回のみ使用可能であることを保証することで、インピーダンスの不一致に対処します。
-
スケーラブルなデータ・オブジェクト: JSON二面性ビューは、アプリケーションがJSONドキュメントまたは表のSQLでネイティブに動作したり、両方で同時に動作できるため、効率的なストレージ管理とデータの一貫性を提供します。二面性ビューは、任意の数の表に対して宣言できます。また、同じまたは重複するリレーショナル表のセットに対して、異なる二面性ビューを定義することもできます。これにより、アプリケーション開発者は使い慣れた方法でアプリケーション・オブジェクトを管理し、通常のドライバ、フレームワーク、ツールおよび開発方法を使用しながら複雑なデータ製品を作成でき、データはリレーショナル・データベースに保存されます。
-
イベント・ブローカへのアトミック・アップデート: JSON Dualityは、ドキュメント・データベースよりも高速なJSONを提供し、並列性と最適化を提供することでOLTPのレイテンシを向上させます。これは、データ管理が非常に高い効率でリレーショナル・レベルで実行されるためです。Oracle GoldenGateデータ・ストリームは、COMMITイベントが発生すると同時に、標準パターンを使用して、データ層から直接ビジネス・オブジェクトのイベントベースの公開をリアルタイムで自動化します。
-
CDCによるACID準拠のデータ・オブジェクト: JSON二面性ビューでは、ロックフリーの同時実行性制御によって、データ・オブジェクトが常に同期され、不整合と失効データの両方が防止されます。Oracle GoldenGate Data Streamsは、信頼性の高いJSONベースのデータ製品を、すべてのデータ・コンシューマのデータ製品が利用可能になった時点で、高いスループット、低レイテンシ、保証された完全一致で公開します。
JSON DVおよびJCTの構成時に使用されるパラメータ
JSONリレーショナル二面性ビューおよびJSONコレクション表を使用する場合は、次のパラメータを構成する必要があります。
テーブル
論理レプリケーションを有効にした後、ExtractでJSONリレーショナル二面性ビューおよびJSONコレクション表からの変更を取得するために使用されます。TABLE | MAP文のワイルドカードがサポートされています。
ノート:ワイルドカードはTABLE | MAP文でサポートされていますが、ADD TRANDATAではワイルドカードの使用はサポートされていません。
TABLE HR.*パラメータ設定には、実表およびJSONリレーショナル二面性ビューがExtractによってすでに取得されている場合、HRの下に含められ、ユーザーのオーバーヘッドが回避されます。
Oracle GoldenGateパラメータおよび機能リファレンスのTABLE | MAPを参照してください。
MAP
ターゲットJSONリレーショナル二面性ビューおよびJSONコレクション表に変更を適用するためにReplicatによって使用されます。ワイルドカードがサポートされています。複製を回避するために、構成がJSON DVとその基礎となる表の両方に変更を適用しないようにします。
キーコレクション
単一の事前定義済キー_idがあるため、JSONリレーショナル二面性ビューおよびJSONコレクション表ではサポートされません。
AUTO_CAPTURE
有効な論理レプリケーションを使用して、JSONリレーショナル二面性ビューおよびJSONコレクション表から変更を取得します。詳細は、Extractの自動キャプチャ・モードの構成およびTRANLOGOPTIONS auto_captureモードを参照してください。
変更データを配信するためのGoldenGateデータ・ストリームおよびJSONリレーショナル二面性ビューの構成
データ・ストリームの機能をJSONリレーショナル二面性ビューと組み合せて、データ・プロデューサからデータ・コンシューマへのデータ配信を提供する場合、Oracle AI Database 26aiからJSONリレーショナル二面性ビューを設定してから、Extract、関連する証跡ファイルを作成し、Oracle GoldenGate Webインタフェースからデータ・ストリームを追加する必要があります。
JSONリレーショナル二面性ビューおよびJSONコレクション表へのレプリケートには、Oracle GoldenGate for Distributed Applications and AnalyticsのMongoDBハンドラを使用できます。Oracle GoldenGate for Distributed Applications and AnalyticsガイドのMongoDBハンドラを参照してください。
これらのタスクを実行するステップは次のとおりです。
-
JSONリレーショナル二面性ビューを作成します。
JSONリレーショナル二面性ビューを作成するステップは、『JSONリレーショナル二面性開発者ガイド』の二面性ビューの作成に関する項を参照してください。
-
JSONリレーショナル二面性ビューまたはJSONコレクション表(あるいはその両方)の表レベルのサプリメンタル・ロギングを有効にします。「JSONリレーショナル二面性ビューおよびJSONコレクション表のサプリメンタル・ロギングの有効化」を参照してください。
-
Oracle GoldenGateでExtractおよび証跡ファイルを作成します。
Extractの追加および証跡の追加を参照してください。
-
Oracle GoldenGate分散サービスからデータ・ストリームを追加します。
データ・ストリームの追加を参照してください。
-
テスト用にドキュメントに変更データを挿入します。
-
データ・ストリームから変更データを使用します。
二面性ビューのGoldenGateデータ・ストリームを設定するcURLコマンドのサンプル・セットは、JSONリレーショナル二面性ビューのGoldenGateデータ・ストリームを構成するためのサンプル・コマンドを参照してください。