8.1.7 Java Message Service
ここでは、Oracle GoldenGate for Distributed Applications and Analytics (GG for DAA)を使用したJava Message Service (JMS)メッセージの取得およびOracle GoldenGate証跡への書込みについて説明します。
- 前提条件
- メッセージ取得の構成
この章では、JMSメッセージを取得するVAM Extractの構成方法について説明します。
親トピック: ソース
8.1.7.1 前提条件
8.1.7.1.1 ソース・タイプを検出するための資格証明ストア・エントリの設定
JMS取得
Kafkaと同様に、ソース・タイプを検出するために、ユーザーは接頭辞jms://
を使用して資格証明ストア・エントリを作成できます。
ノート:
資格証明ストア・エントリは、「管理サービス」の「DB接続」で設定できます。alter credentialstore add user jms:// password <anypassword> alias jms
SOURCEDB
パラメータがUSERIDALIAS
オプションとともに指定されていない場合、ソース・タイプはJMSとみなされ、これを示す警告メッセージがログに記録されます。
親トピック: 前提条件
8.1.7.2 メッセージ取得の構成
8.1.7.2.1 VAM Extractの構成
JMS取得は、Oracle GoldenGate Extractプロセスでのみ機能します。Javaメッセージ取得アプリケーションを実行するには、次のものが必要です。
-
Java用Oracle GoldenGateアダプタ
-
Extractプロセス
-
メッセージ取得用に構成されたExtractパラメータ・ファイル
-
ソース定義ファイルなどの受信データ形式の説明。
-
Java 8がホスト・マシンにインストールされていること
8.1.7.2.1.1 Extractの追加
メッセージ取得VAMをOracle GoldenGateインストールに追加するには、GGSCIコマンドを使用してExtractとExtractが作成する証跡を追加します。
ADD EXTRACT jmsvam, VAM ADD EXTTRAIL dirdat/id, EXTRACT jmsvam, MEGABYTES 100
プロセス名(jmsvam
)は、8文字以下のプロセス名に置き換えます。証跡識別子(id
)は、任意の2文字です。
ノート:
BEGIN
、EXTRBA
などのExtractの位置を設定するコマンドは、メッセージ取得に対してサポートされません。Extractの再開では、常にメッセージ・キューの末尾からメッセージを読み取ります。
親トピック: VAM Extractの構成
8.1.7.2.1.2 Extractパラメータの構成
親トピック: VAM Extractの構成
8.1.7.2.1.3 メッセージ取得の構成
メッセージ取得は、VAMプロパティ・ファイル(アダプタ・プロパティ・ファイル)のプロパティによって構成されます。このファイルは、Extract VAM
パラメータのPARAMS
オプションによって識別され、ロギング特性、パーサーのマッピングおよびJMS接続設定の決定に使用されます。
親トピック: VAM Extractの構成
8.1.7.2.2 メッセージの接続と取得
JMSメッセージを処理するには、JMSインタフェースへの接続の構成、トランザクションのメッセージの取得と解析、各メッセージの証跡への書込み、トランザクションのコミットおよびメッセージのキューからの削除を行う必要があります。
親トピック: メッセージ取得の構成
8.1.7.2.2.1 JMSへの接続
JMSへの接続は、汎用JMSインタフェースを介して行われます。プロパティを設定して次の接続の特性を構成できます。
-
JMSクライアントのJavaクラスパス
-
JMSキューまたはトピック・ソース宛先の名前
-
Java Naming and Directory Interface (JNDI)接続プロパティ
-
初期コンテキストの接続プロパティ
-
接続ファクトリ名
-
宛先名
-
-
セキュリティ情報
-
JNDI認証資格証明
-
JMSユーザー名とパスワード
-
VAMと連携するよう構成されたExtractプロセス(例のjmsvam
など)は、起動時にメッセージ・システムに接続します。
ノート:
処理時に接続の問題があった場合に自動的に再起動されるよう、ExtractをManagerのAUTORESTART
リストに含めることができます。
現在、Oracle GoldenGate Javaメッセージ取得アダプタではJMSテキスト・メッセージのみサポートされます。
親トピック: メッセージの接続と取得
8.1.7.2.2.2 メッセージの取得
次のメッセージを要求されると、接続処理によって次のステップが実行されます。
-
ローカルJMSトランザクションがまだ開始されていない場合は開始します。
-
メッセージ・キューからメッセージを読み取ります。
-
メッセージがないために読取りが失敗した場合、ファイル終端メッセージを返します。
-
そうではない場合、メッセージのコンテンツを返します。
親トピック: メッセージの接続と取得
8.1.7.2.2.3 トランザクションの完了
トランザクションを構成するメッセージがすべて正常に取得および解析され、Oracle GoldenGate証跡に書き込まれると、ローカルJMSトランザクションがコミットされ、メッセージがキューまたはトピックから削除されます。エラーが発生した場合、ローカル・トランザクションはロールバックされ、メッセージはJMSキューに残されます。
親トピック: メッセージの接続と取得