ヘッダーをスキップ
Oracle® Fusion Middleware Oracle TopLink Java Persistence API (JPA)拡張機能リファレンス
12c (12.1.2)
E48005-01
  目次へ移動
目次

前
 
次
 

@ValuePartitioning

@ValuePartitioningを使用して、オブジェクト(オブジェクトの場所、テナントなど)からのフィールド値によって、データベース・クラスタへのアクセスをパーティション化します。各値は、特定のサーバーに割り当てられます。その値を持つオブジェクトに対するすべての書込みまたは読取り要求は、サーバーに送信されます。問合せにフィールドがパラメータとして含まれていない場合は、問合せをすべてのサーバーに送信して統合するか、セッションのデフォルトの動作のままにすることができます。

注釈要素

表2-77は、この注釈の要素を示しています。

表2-77 @ValuePartitioningの注釈要素

注釈要素 説明 デフォルト

name

(必須)パーティション・ポリシーの名前。名前は、永続性ユニットに一意である必要があります。


partitionColumn

(必須)問合せをパーティション化するためのデータベース列または問合せパラメータ。

これは表列名であり、クラス属性名ではありません。列値は、問合せに含まれている必要があり、通常はオブジェクトIDの一部です。これは、問合せパラメータの名前にもなります。

問合せにフィールドが含まれていない場合、問合せはパーティション化されません。


partitions

(必須)値パーティションを格納します。各パーティションは、値をconnectionPoolにマップします。


defaultConnectionPool

(オプション)デフォルトの接続プールは、マップされていない値に使用されます。


partitionValueType

(オプション)開始値および終了値のtype

String

unionUnpartitionableQueries

(オプション)パーティション・フィールドを含まない問合せをすべてのデータベースに送信し、結果を統合するかどうかを定義します。

false


使用方法

エンティティ、リレーションシップ、問合せまたはセッション/永続性ユニットでパーティション化を有効にできます。パーティション・ポリシーは、再利用できるようにグローバルに名付けられ、@Partitioned注釈を使用して設定される必要もあります。

永続性ユニット・プロパティは、読取り/書込み/シーケンスの既存の構成に加えて、名前付き接続プールの追加をサポートします。名前付き接続プールは、データベース・クラスタの各ノードに対して定義される必要があります。

トランザクションによって複数のパーティションからのデータが変更される場合、JTAを使用してデータの適切な2フェーズ・コミットを確認する必要があります。1つのトランザクションに1つのノードのみが使用されるように、EntityManagerで排他接続を構成することもできます。

Oracle TopLinkを使用したパーティション化の例は、「パーティション化の使用」を参照してください。

関連項目

詳細は、次を参照してください。