OPtimizacion

Páginas: 15 (3729 palabras) Publicado: 9 de junio de 2013
Tablas en Oracle
Tablas: son la unidad básica de almacenamiento de datos en Oracle. Los datos son
almacenados en filas y columnas. La tabla se define a través de:
§

Nombre.

§

Conjunto de columnas (nombre y tipo)

Al crear una tabla(no-clusterizada), Oracle asigna un segmento de datos en el tablespace
para mantener los datos de la tabla. Se puede controlar la asignación de espaciopara
el segmento de datos de la tabla y el uso de este espacio reservado de la siguiente
manera:
§

Cantidad de espacio asignado al segmento de datos, asignando los parámetros de
almacenamiento del segmento.

§

Controlando el uso del espacio vacío en los bloques que constituyen los extents del
segmento, asignando el PCUSED y PCFREE.

Tipos de Tablas:
§

Regulares:

§Particionadas:

§

Organizadas por Índices:

§

Agrupadas (clusterizadas)

1

Tablas Regulares






Forma comunmente usada para almacenar los
datos.
Tipo por defecto.
Se tiene muy poco control sobre la distribución de
las filas de la tabla en su almacenamiento físico:


Se realiza de acuerdo a la actividad propia de los
bloques de datos.

2

PCTUSED y PCTFREE
PCTFREE:valor entre 0 y 99. El valor de 0 permite que el blqoue entero se llene con
inserciones de tuplas nuevas.
§
§

Si no existen actualizaciones, PCTFREE= 0.

§


Valor por defecto 10.
En cualquier otro caso: PCTFREE=100*upd/(upd + ins)

PCTUSED: valor entre 1 y 99. No es un parámetro configurable para tablas organizadas
por índice.
§

Valor por defecto 40.

§

Se especifica sise eliminan filas.

§

PCTUSED=100-(PCTFREE +100*upd/blocksize) + 100ins/blocksize

Donde:
upd: cantidad promedio en bytes, añadido en una actualización.
ins: tamaño promedio de una fila al insertarse.
El PCTUSED permite inserciones en la tabla cuando hay suficiente espacio en el bloque
para actualizaciones de filas y para una fila más.
En una tabla con muchas inserciones, cambiar elPCTUSED puede mejorar el desempeño de
los bloques de datos.
La suma del PCTFREE y PCTUSED debe ser menor a 100.
3

PCTUSED y PCTFREE
PCTFREE: valor entre 0 y 99. El valor de 0 permite que el bloque
entero se llene con inserciones de tuplas nuevas.
§
§

Si no existen actualizaciones, asignar 0.

§



Valor por defecto 10.
En cualquier otro caso:PCTFREE=100*tam_prom_tupla/(tam_prom_tupla +
tam_inic_tupla)

PCTUSED: valor entre 1 y 99. No es un parámetro configurable para
tablas organizadas por índice.
§

Valor por defecto 40.

§

Se especifica si se eliminan filas.

§

PCTUSED=100-PCTFREE -100*tam_prom_tupla/blocksize

Donde:
tam_prom_tupla: tamaño promedio de una fila
tam_inic_tupla: tamaño promedio de una fila al insertarse.
La suma del PCTFREE yPCTUSED debe ser menor a 100.
4

PCTUSED y PCTFREE
Un PCTFREE alto permite más actualizaciones en un bloque y el bloque
puede acomodar menos filas.
Coloque un valor alto si la tabla contiene:


Columnas que son inicialmente NULL y luego actualizadas.



Columnas que pueden aumentar de tamaño cuando se actualizan.

El PCTUSED se configura para que el bloque retorne a la lista de‘libres’
cuando hay suficiente espacio para acomodar una tupla promedio.

5

Encadenamiento y Migración
Una fila puede no ser almacenada completamente en un bloque si:


Encadenamiento (chaining): la fila es demasiado larga para ser almacenada en
un bloque. Esto puede ocurrir durante una inserción o una modificación.




Oracle almacena la fila en una cadena de uno o más bloques.Migración: si un UPDATE aumenta la cantidad de espacio ocupado por la fila,
de forma que la misma no pueda ser almacenada en un bloque de datos.


Oracle trata de encontrar otro bloque con suficiente espacio para almacenar la fila
completa. Si el bloque existe, se mueve la fila completa. Si no, Oracle separa la fila
en varios “row pieces”, se mueve el (los) pedazo(s) que pueda(n) ser...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • optimizacion
  • optimizacion
  • Optimizacion
  • Optimizacion
  • Optimizacion
  • Optimizacion
  • Optimizacion
  • Optimizacion

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS