|Oracle9i SQL Reference
Release 2 (9.2)
Part Number A96540-02
CLUSTER statement to redefine storage and parallelism characteristics of a cluster.
You cannot use this statement to change the number or the name of columns in the cluster key, and you cannot change the tablespace in which the cluster is stored.
The cluster must be in your own schema or you must have the
CLUSTER system privilege.
Specify the schema containing the cluster. If you omit
schema, Oracle assumes the cluster is in your own schema.
Specify the name of the cluster to be altered.
Use this clause to change the values of the
MAXTRANS parameters of the cluster.
STORAGE clause to change the storage characteristics of the cluster.
You cannot change the values of the storage parameters
MINEXTENTS for a cluster.
SIZE clause to specify the number of cluster keys that will be stored in data blocks allocated to the cluster.
You can change the
SIZE parameter only for an indexed cluster, not for a hash cluster.
allocate_extent_clause to explicitly allocate a new extent for the cluster.
When you explicitly allocate an extent with this clause, Oracle does not evaluate the cluster's storage parameters and determine a new size for the next extent to be allocated (as it does when you create a table). Therefore, specify
SIZE if you do not want Oracle to use a default value.
You can allocate a new extent only for an indexed cluster, not for a hash cluster.
deallocate_unused_clause to explicitly deallocate unused space at the end of the cluster and make the freed space available for other segments.
CACHE if you want the blocks retrieved for this cluster to be placed at the most recently used end of the least recently used (LRU) list in the buffer cache when a full table scan is performed. This clause is useful for small lookup tables.
NOCACHE if you want the blocks retrieved for this cluster to be placed at the least recently used end of the LRU list in the buffer cache when a full table scan is performed. This is the default behavior.
parallel_clause to change the default degree of parallelism for queries and
DML on the cluster.
If the tables in
cluster contain any columns of LOB or user-defined object type, this statement as well as subsequent
DELETE operations on
cluster are executed serially without notification.
The syntax of the
NOPARALLEL for serial execution. This is the default.
PARALLEL if you want Oracle to select a degree of parallelism equal to the number of CPUs available on all participating instances times the value of the
PARALLEL_THREADS_PER_CPU initialization parameter.
integer indicates the degree of parallelism, which is the number of parallel threads used in the parallel operation. Each parallel thread may use one or two parallel execution servers. Normally Oracle calculates the optimum degree of parallelism, so it is not necessary for you to specify
The following examples modify the clusters that were created in the "Examples" section of
CLUSTER on .
The next statement alters the
Oracle allocates 1024 bytes for each cluster key value and turns on the cache attribute. Assuming a data block size of 2 kilobytes, future data blocks within this cluster contain 2 cluster keys in each data block, or 2 kilobytes divided by 1024 bytes.
The following statement deallocates unused space from the
language cluster, keeping 30 kilobytes of unused space for future use: