Gestionando las extensiones en Oracle
Las tablas están compuestas por bloques, que estos forman extensiones, las extensiones forman segmentos y estos se alojan en las tablespaces.
Cuando creamos una tablespace sin especificar las extensiones que queremos darle, por defecto Oracle nos crea las extensiones con la opción EXTENT MANAGEMENT LOCAL.
REUSE EXTENT MANAGEMENT LOCAL como comando para crear las extensiones:
Si lo dejásemos así, tendría el mismo efecto que si lo hubiésemos dejado hasta el tercer comando. La cláusula que pondremos seguido del comando nos va a definir cómo se van a crear las extensiones. Las cláusulas que podemos utilizar son:
UNIFORM, lo cual significa que las extensiones siempre van a tener el mismo tamaño. Esta es funcional cuando tenemos una estructura en la que conocemos muy bien el tamaño final y los datos son homogéneos.
AUTOALLOCATE, que manda a la base de datos a gestionar ella misma las extensiones, por lo cual es la más adecuada para crear.
Con AUTOALLOCATE:
Al crear una tabla se crearán las extensiones dependiendo del tamaño inicial que le demos. Oracle se rige por parámetros.
Los parámetros a tener en cuenta para el tamaño de las extensiones som:
64K 1M 8M 64M
El tamaño inicial es ubicado automáticamente entre dos parámetros, y de los cuales va a asumir el tamaño del menor y creará tantas extensiones hasta igualar el tamaño inicial.
Por ejemplo:
Si creamos una tabla con un tamaño inicial de 100K, las extensiones tomaran un tamaño de 64K al ser los 100K iniciales menor que 1M que es el parámetro mayor en este caso:
64K -100K-1M
Y para llegar a los 100K creará dos extensiones de 64K.
Con UNIFORM:
Al crear una tabla mantiene el tamaño que se le asigna al crear la tablespace.
Por ejemplo:
Si se da 1mega al crear la tablespace, aunque el tamaño de la tabla sea menor que un mega, las extensiones asumirán ese tamaño.
Si el tamaño inicial de la tabla es mayor que el tamaño asignado en el comando Uniform, se crearán tantas extensiones de ese tamaño como haga falta para llenar el tamaño:
UNIFORM SIZE 1M, y la tabla con (INITIAL 3M). Aquí se crearán 3extensiones de 1mega para llenar los tres megas de la tabla.
