|
EclipseLink 2.2.0, build 'v20110202-r8913' API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT |
@Target(value={TYPE,METHOD,FIELD}) @Retention(value=RUNTIME) public @interface HashPartitioning
HashPartitioning partitions access to a database cluster by the hash of a field value from the object, such as the object's location, or tenant. The hash indexes into the list of connection pools. All write or read request for object's with that hash value are sent to the server. If a query does not include the field as a parameter, then it can either be sent to all server's and unioned, or left to the sesion's default behavior.
Partitioning can be enabled on an Entity, relationship, query, or session/persistence unit. Partition policies are globally named to allow reuse, the partitioning policy must also be set using the @Partitioned annotation to be used.
Partitioned
,
HashPartitioningPolicy
Required Element Summary | |
---|---|
java.lang.String |
name
The name of the partition policy, names must be unique for the persistence unit. |
Column |
partitionColumn
The database column or query parameter to partition queries by. |
Optional Element Summary | |
---|---|
java.lang.String[] |
connectionPools
List of connection pool names to partition across. |
boolean |
unionUnpartitionableQueries
Defines if queries that do not contain the partition field should be sent to every database and have the result unioned. |
Element Detail |
---|
public abstract java.lang.String name
public abstract Column partitionColumn
public abstract java.lang.String[] connectionPools
public abstract boolean unionUnpartitionableQueries
|
EclipseLink 2.2.0, build 'v20110202-r8913' API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT |