eXtreme Scale ユーザー出口記述子ファイル
eXtreme Scale CDC アダプターの動作を定義する構成属性です。
- システム・クラス・パスからファイルをロードします。
- ファイル・システムからファイルをロードします。
C:\opt\ibm, enter C:\\opt\\ibm
というパスを使用するとします。 スペースを含む Windows ディレクトリーはサポートされていません。 ${variable} を使用して、パス内で環境変数を指定できます。
以下に例を示します。 ${APP_LOC}/config/userexit.xml
wxsUserExitConfig エレメント
wxsUserExitConfig エレメントは、XML ファイルの最上位レベルのエレメントです。 前の例で示されているように、 このエレメントを eXtreme Scale XML 文書に記述します。 このエレメントは、ファイルの名前空間とスキーマ・ロケーションをセットアップします。
- 出現回数: 1 回
- 子エレメント: domains エレメントおよび tableMappings エレメント
domains エレメント
domains エレメントは、すべての domain エレメントのコンテナーです。
- 出現回数: 1 回
- 子エレメント: domain エレメント
ドメイン・エレメント
domain エレメントを使用して、リモート ObjectGrid クラスターへの接続を定義します。
- 出現回数: 1 回または複数回
- 子エレメント: clientProperties エレメント
- name
ドメインを識別し、 tableMapping エレメントの domainRef 属性によって参照されます。 各 name は固有である必要があります。 domainRef 属性の値が 1 つの domain エレメントの name と一致しない場合、 XML 妥当性検査は失敗します。 任意の数の tableMapping エレメントが、単一の domain エレメントを参照できます。 (必須)
- catalogEndPoints
クライアント・サイドの ObjectGrid インスタンスを取得するために接続するカタログ・サーバーを指定します。 値の形式は、
host:port<,host:port>
でなければなりません。 host は、カタログ・サーバーが実行されているリスナー・ホストです。 port は、そのカタログ・サーバー・プロセスのリスナー・ポートです。 (必須)- securityProps
- このドメインのために使用されるセキュリティー・プロパティー・ファイルへのパスを指定します。重要: パスは、Windows オペレーティング・システムの円記号をサポートしません。 円記号を使用している場合は、パス内の円記号 (¥) をすべてエスケープする必要があります。 例えば、
C:\opt\ibm, enter C:\\opt\\ibm
というパスを使用するとします。 スペースを含む Windows ディレクトリーはサポートされていません。 ${variable} を使用して、パス内で環境変数を指定できます。 以下に例を示します。${APP_LOC}/config/userexit.xml
- overrideXML
このドメインのために使用されるオブジェクト・グリッド・オーバーライド xml へのパスを指定します。 (オプション)
重要: パスは、Windows オペレーティング・システムの円記号をサポートしません。 円記号を使用している場合は、パス内の円記号 (¥) をすべてエスケープする必要があります。 例えば、C:\opt\ibm, enter C:\\opt\\ibm
というパスを使用するとします。 スペースを含む Windows ディレクトリーはサポートされていません。 ${variable} を使用して、パス内で環境変数を指定できます。 以下に例を示します。${APP_LOC}/config/userexit.xml
- writeBehindConfig
- このドメイン内のすべての ObjectGrid インスタンスへのすべてのイベントが非同期に実行されることを指定します。 後書きパラメーターは、最大更新時間と最大キー更新カウントから成ります。 後書きパラメーターの形式は "[T(time)][;][C(count)]" です。 次のいずれかのイベントが発生すると、リモート・データ・グリッドが更新されます。
- 前回の更新が終わってから、最大更新時間 (秒単位で指定される) が経過した。
- キュー・マップ内の使用可能な更新の数が最大更新カウントに達した。
clientProperties エレメント
clientProperties エレメントは、すべての objectGrid エレメントのコンテナーです。
- 出現回数: 0 回または 1 回
- 子エレメント: objectGrid エレメント
objectGrid エレメント
objectGrid エレメントを使用して、このオブジェクト・グリッド・インスタンスの任意のクライアント・プロパティーを指定します。
- 出現回数: 1 回または複数回
- 子エレメント: なし
- name
これらのプロパティーを適用するデータ・グリッドの名前。 (必須)
- clientPropertyFile
- このオブジェクト・グリッドによって使用されるクライアント・プロパティー・ファイルへのパスを指定します。 (必須)重要: パスは、Windows オペレーティング・システムの円記号をサポートしません。 円記号を使用している場合は、パス内の円記号 (¥) をすべてエスケープする必要があります。 例えば、
C:\opt\ibm, enter C:\\opt\\ibm
というパスを使用するとします。 スペースを含む Windows ディレクトリーはサポートされていません。 ${variable} を使用して、パス内で環境変数を指定できます。 以下に例を示します。${APP_LOC}/config/userexit.xml
tableMappings エレメント
tableMappings エレメントは、すべての tableMapping エレメントのコンテナーです。
- 出現回数: 1 回
- 子エレメント: tableMapping エレメント
tableMapping エレメント
tableMapping エレメントを使用して、変更データ・キャプチャー・イベントが適用される eXtreme Scale データ・グリッドおよびマップを指定します。
- 出現回数: 1 回または複数回
- 子エレメント: keyMetaData エレメントおよび valueMetaData エレメント
- mapName
- これらの変更データ・キャプチャー・イベントが適用されるバッキング・マップを指定します。 (必須)
- objectGridName
- バッキング・マップが存在するオブジェクト・グリッド・インスタンスの名前。 (必須)
- domainRef
- domain エレメントへの参照を指定します。 この属性の値は、いずれかの domain エレメントの name 属性と一致しなければなりません。 一致する name がない場合、妥当性検査は失敗します。 (必須)
- convertToUpsert
- insert 操作または update 操作の代わりに upsert 操作が実行されるかどうかを指定します。 (オプション)
デフォルト: False
- mode
変更イベントの処理方法を指定します。 有効なモードは、PUSH、INVALIDATE、および REFRESH です。 (オプション)
PUSH: 変更データ・キャプチャー・イベントがそのまま適用されます。 マッピングについては、以下の表を参照してください。 convertToUpsert が true に設定されている場合、insert 操作および update 操作は upsert に変更されます。
INVALIDATE: 変更データ・キャプチャー・イベント Update および Delete は、 INVALIDATE 操作にマップされます。 Insert 変更データ・キャプチャー・イベントは無視されます。 アプリケーションによって行われるキーに対する次の get 操作は、 組織的にローダーからキーに値を設定します。 このモードは、ローダー実装があり、スパース・キャッシュを保持したい場合に使用してください。
REFRESH: このモードは、update 変更データ・キャプチャー・イベントに対して INVALIDATE 操作の後に get 操作が実行されることを除いて、INVALIDATE モードと同じです。
以下の表は、変更キャプチャー・イベントに対して実行されるデータ・グリッド操作のタイプをモード別に示します。表 1. CDC に対するデータ・グリッド操作 AFTER_INSERT イベント AFTER_UPDATE イベント AFTER_DELETE イベント PUSH (デフォルト) Insert または Upsert Update または Upsert 除去 INVALIDATE なし 無効化 無効化 REFRESH なし 無効化および取得 無効化 重要: ローダー実装を使用するマップは、INVALIDATE モードまたは REFRESH モードのみを使用します。そうしないと、無限インライン・キャッシュ・クローズ・ループが発生するリスクがあります。 無限インライン・キャッシュ・クローズ・ループのシナリオについて詳しくは、「 WebSphere eXtreme Scale Change Data Capture Adapter for InfoSphere Data Replication」を参照してください。- maxRetryAttempts
変更データ・キャプチャー・イベントが再試行される回数を指定します。これを超えると失敗が返されます。 (オプション)
デフォルト: 0
- transactionTimeout
トランザクションを完了するのに許されている時間を秒で指定します。 トランザクションがこの時間内に完了しなかった場合、 そのトランザクションはロールバック対象としてマークされ、TransactionTimeoutException 例外が発生します。 (オプション)
デフォルト: リモート・グリッド objectgrid.xml ファイル内に指定された txTimeout 値
- transactionIsolation
ObjectGrid によって作成されたすべてのセッションのデフォルトのトランザクション分離レベルを設定します。 (オプション)
デフォルト: リモート・グリッド objectgrid.xml ファイル内に指定された txIsolation 値
keyMetaData エレメント
keyMetaData エレメントを使用して、キーを表すメタデータを指定します。
- 出現回数: 1 回
- 子エレメント: column エレメント
- className
- キー・インスタンスを表す、インスタンス化するクラスの名前を指定します (オプション)。 指定される場合、
以下の条件のいずれかが存在していなければなりません。
- このクラスには、どの列データがこのクラス・インスタンス内のフィールドまたはメソッドにバインドされるのかを指定するため、javax.persistence column アノテーションが付いている必要があります。
- どの列がこのクラス・インスタンス内のどのフィールドまたはメソッドにバインドされるのかを判別するため、column エレメントの name 属性および propertyName 属性が指定される必要があります。
- methodAccess
キー・オブジェクト・インスタンス内の永続データのイントロスペクトおよび設定を行うために、アダプターがフィールドとメソッドのどちらのアクセスを使用するのかを指定します。
値が false に設定されている場合、クラスのフィールドがイントロスペクトされます。 値が true に設定されている場合、クラスのメソッドがイントロスペクトされます。
valueMetaData エレメント
- 出現回数: 1 回
- 子エレメント: column エレメント
- className
- 値インスタンスを表す、インスタンス化するクラスの名前を指定します (オプション)。 指定される場合、
以下の条件のいずれかが存在していなければなりません。
- このクラスには、どの列データがこのクラス・インスタンス内のフィールドまたはメソッドにバインドされるのかを指定するため、javax.persistence column アノテーションが付いている必要があります。
- どの列がこのクラス・インスタンス内のどのフィールドまたはメソッドにバインドされるのかを判別するため、column エレメントの name 属性および propertyName 属性が指定される必要があります。
- methodAccess
キー・オブジェクト・インスタンス内の永続データのイントロスペクトおよび設定を行うために、アダプターがフィールドとメソッドのどちらのアクセスを使用するのかを指定します。
値が false に設定されている場合、クラスのフィールドがイントロスペクトされます。 値が true に設定されている場合、クラスのメソッドがイントロスペクトされます。
column エレメント
- 出現回数: 0 回から複数回
- 子エレメント: なし
- name
キーまたは値オブジェクト・インスタンスとして使用される列の名前。 (オプション)
- propertyName
この列がマップされる先のフィールドまたはメソッドの名前。 (オプション)