Java Persistence API (JPA) 時間ベース・データベース・アップデーターは、 データベース内の最新の変更で ObjectGrid マップを更新します。
WebSphere® eXtreme Scale グリッドの背後にあるデータベースに変更が直接行われた場合、それらの変更は同時には eXtreme Scale グリッドに反映されません。eXtreme Scale をメモリー内のデータベース処理スペースとして正しく実装するには、グリッドがデータベースと同期しなくなる可能性があることを考慮する必要があります。時間ベース・データベース・アップデーター は、Oracle 10g のシステム変更番号 (SCN) 機能 および DB2® 9.5 の行変更タイム・スタンプを 使用して、無効化または更新のためにデータベース内の変更をモニターします。また、 アップデーターを使用すると、複数のアプリケーションが同じ目的でユーザー定義フィールドを設定することもできます。
時間ベース・データベース・アップデーターでは、JPA インターフェースを使用して、定期的にデータベースを照会し、データベース内で新たに挿入され、更新されたレコードを示す JPA エンティティーを取得します。レコードを定期的に更新するために、データベース内のすべてのレコードには、レコードが最後に更新または挿入された時点の時刻または順序を識別するためのタイム・スタンプが必要です。タイム・スタンプはタイム・スタンプ形式になっている必要はありません。タイム・スタンプ値は、固有の漸増値を生成する場合は、整数または長形式とすることができます。
この機能は、いくつかの市販のデータベースで提供されています。
例えば、DB2 9.5 では、 ROW CHANGE TIMESTAMP 形式を使用する列を以下のように定義できます。
ROWCHGTS TIMESTAMP NOT NULL
GENERATED ALWAYS
FOR EACH ROW ON UPDATE AS
ROW CHANGE TIMESTAMP
Oracle では、レコードのシステム変更番号を示す ora_rowscn という疑似列を使用することができます。
JPA 時間ベース・データ・アップデーターについて詳しくは、 JPA 時間ベース・データ・アップデーターの構成を参照してください。