Ir al contenido principal

3.4. Espacios para objetos de la base de datos.

 

3.4. Espacios para objetos de la base de datos

PANORAMAGENERAL

En el nivel de almacenamiento, una base de datos está formada de registros físicos(también conocidos como bloques o páginas) organizados en archivos. Un

Registro físico

 es un conjunto de bytes que se transfieren entre el almacenamiento volátil dela memoria principal y el almacenamiento fijo de un disco.

Un archivo

es un conjunto de registros físicos organizados para conseguir unacceso eficiente. La figura 8.1 ilustra las relaciones entre los

 registros lógicos

 (filas de una tabla) y registros físicos almacenados en un archivo.


Normalmente el DBMS y la aplicación tienen áreas de memoria separadas

Conocidas  Como Buffers

.Cuando una aplicación hace una solicitud para un registro lógico, el DBMS ubicaal registro físico que lo contiene. En el caso de una operación de lectura, el sistema operativo transfiere el registrofísico del disco al área de memoria del DBMS. Después el DBMS transfiere elregistro lógico al búfer de la aplicación.El proceso de transferencia se invierte en el caso de una operación de escritura.

En general, el almacenamiento de los objetos de la base de datos (tablas e índices fundamentalmente) no se realiza sobre el archivo o archivos físicos dela base de datos, sino que se hace a través de estructuras lógicas dealmacenamiento que tienen por debajo a esos archivos físicos.

Esto es útil porque permite que a esos "espacios de objetos" les sean asociados nuevos dispositivos físicos (es decir, más espacio en disco) de forma dinámica  cuando la base de datos crece de tamaño más de lo previsto. Una base de datos Oracle se compone lógicamente deTables paces

, y físicamente de datafiles



Tablespace

 (espacio de tablas)Una base de datos se divide en unidades lógicas denominadas TABLESPACE.  No es un archivo físico en el disco, simplemente es el nombre que tiene un conjunto de propiedades de almacenamiento que se aplican a los objetos (tablas,secuencias) que se van a crear en la base de datos bajo el tablespace indicado(tablas, secuencias).Un objeto en base de datos debe estar almacenado obligatoriamente dentro de untablespace.


Datafile

 (archivo de datos)Un datafile es la

 representación física de un tablespace

. Son los "archivosde datos" donde se almacena la información físicamente. Un datafile está asociado a un solo tablespace y, a su vez, un tablespace está asociado a uno o varios datafiles. Es decir, la relación lógica entre tablespaces y datafiles es de 1-N.



Segment

 (segmento, trozo, sección)Es aquel espacio reservado dentro de un datafile, para ser utilizado por un solo objeto. Físicamente,

 todo objeto en base de datos no es más que un segmento

 (segmento,trozo, sección) dentro de un datafile.

El segmento es la representación física del objeto en base de datos

 (el objeto no es más que una definición lógica).El espacio que realmente se ocupa dentro del datafile es el segment. Existen cuatro tipos de segmentos (principalmente):

 Segmentos de TABLE: aquellos que contienen tablas

 Segmentos de INDEX: aquellos que contienen índices

 Segmentos de ROLLBACK: aquellos se usan para almacenar información de la  transacción activa.

 Segmentos TEMPORALES: aquellos que se usan para realizar operacionestemporales que no pueden realizarse en memoria, tales como ordenaciones oagrupaciones de conjuntos grandes de datos.

 

Extent

 (extensión)Un segmento, a su vez, se compone de distintas

 extensiones

. Un segmento, puede ser reservado de una sola vez (10 Mb de golpe),o de varias veces (5 Mb hoy y 5 Mb mañana). Cada una de las veces que se reserva espacio se denomina

“extensión”

 INITIAL: estas son las extensiones que se reservan durante la creación del objeto.

 NEXT: toda extensión reservada después de la creación del objeto.

 

Data block

 (bloque de datos) Representa la mínima unidad de almacenamiento que es capaz de manejar Oracle. Igual que la mínima unidad de almacenamiento de un disco duro es la

 unidad de asignación

, la mínima unidad de almacenamiento de Oracle es el data block.

En un disco duro no es posible que un fichero pequeño ocupe menos de lo que indique la unidad de asignación, así si la unidad de asignación es de 4 Kb, un fichero que ocupe1 Kb, en realidad ocupa 4 Kb. Cada segmento (o cada extensión) se almacena en uno ovarios bloques de datos.


Comentarios

Entradas populares de este blog

UNIDAD 3: CONFIGURACIÓN Y ADMINISTRACIÓN DEL ESPACIO EN DISCO.

UNIDAD 2.- ARQUITECTURA E INSTALACIÓN DE UN SGBD.

UNIDAD 6: MONITOREO Y AUDITORIA.