Upload
gigi
View
29
Download
0
Embed Size (px)
DESCRIPTION
Estructuras de Almacenamiento y sus Relaciones. Estructuras Lógicas y Físicas. Bloque de Datos. Parámetros del Bloque - PCTFREE - PCTUSED - INITRAS - MAXTRAS. Estructura del bloque. Interacción PCTFREE y PCTUSED. Formato de un Row Piece. MigraciónEncadenamiento. registro. Nuevo reg. - PowerPoint PPT Presentation
Citation preview
Estructuras de Almacenamiento y sus Relaciones
Estructuras Lógicas y Físicas
Bloque de Datos
Estructura del bloque
Parámetros del Bloque-- PCTFREE-- PCTUSED-- INITRAS-- MAXTRAS
Interacción PCTFREE y PCTUSED
Formato de un Row Piece
MigraciónEncadenamiento
Viej
En el bloque original
permanece el rowpiece con el apuntador a la nueva dirección
Nuevo reg
r r
r
registro
registro
Revisando Migración
CREATE TABLE CHAINED_ROWS(OWNER_NAME VARCHAR2(30),TABLE_NAME VARCHAR(30),CLUSTAR_NAME VARCHAR(30),PARTITION_NAME VARCHAR(30),HEAD_ROWID ROWID,ANALYZE_TIMESTAMP DATE);
ANALYZE TABLE TABLA_NAME LIST CHAINED_ROWS;
SELECT COUNT(*)FROM CHAINED_ROWSWHERE OWNER_NAME=’OWNER’ AND TABLE_NAME=’TABLE’;
Eliminando MigraciónCREATE TABLE TABLE_NAME_TEMP AS SELECT * FROM OWNER.TABLEWHERE ROWID IN (SELECT HEAD_ROWID F
FROM CHAINED_ROWSWHERE OWNER_NAME=’OWNER’ AND TABLE_NAME=’TABLE’);
DELETE FROM OWNER.TABLE WHERE ROWID IN (SELECT HEAD_ROWID F
FROM CHAINED_ROWSWHERE OWNER_NAME=’OWNER’ AND
TABLE_NAME=’TABLE’);
INSERT INTO OWNER.TABLE SELECT * FROM TABLE_NAME_TEMP;
DROP TABLE TABLE_NAME_TEMP;DELETE FROM CHAINED_ROWS;ANALYZE TABLE OWNER.TABLE LIST CHAINED_ROWS;
Estructuras Lógicas
Manipulación de las estructuras ¿Cómo se manejan los extents en el tablespace?
Diccionario de datos Localmente
¿Cómo se manejan los segmentos en tablespaces manejados localmente? Manual Automática
¿Cómo se asignan los extents? Manual Uniforme Autoallocate
¿Cómo se manejan los datafiles? Fijo Extensible
¿Cómo se manejan los extents en el tablespace?
{Extent
BMB BMB
Datablock
… … … …
…
…
…
…
…
…
…
BMB
BMB
BMB
BMB
BMB
Segment
Diccionario de Datos Localmente (freelist o bitmap local)
¿Cómo se manejan los segmentos en tablespaces manejados localmente? Manual (PCTFREE, PCTUSE, FREELIST,
FREELIST GROUPS). Automática
PCTFREE = 10
Deletes
Full block
Inserts,updates
Deletes
FS2
FS3
FS1
FS2
FS3
FS4
FS1
Full block
¿Cómo se asignan los extents? Manual
INITIAL NEXT PCTINCREASE MINEXTENTS
Uniforme Autoallocate
Reglas para tablespaces locally managed No clásula DEFAULT STORAGE →autoallocate. Clásula DEFAULT STORAGE
MINIMUM EXTENT=INITIAL=NEXT PCTINCREASE=0 → uniforme
┐(MINIMUM EXTENT=INITIAL=NEXT PCTINCREASE=0 ) →autoallocate
no_especificado(MINIMUM EXTENT) EXTENT=INITIAL=NEXT PCTINCREASE=0 → uniforme
no_especificado(MINIMUM EXTENT) ┐(INITIAL=NEXT PCTINCREASE=0 ) →autoallocate
Simple Algorithm for Fragmentation Elimination (SAFE) Oracle maneja bien segmentos con menos
de 1024 extents Problema de fragmentación Recomendación
Extentes uniformes de 4K, 128 K, 128M
¿Cómo se manejan los datafiles? Tamaño Fijo Extensibles