En
una base de datos almacenamos información relevante para nuestro negocio u
organización y desde el punto de vista físico, la base de datos está conformada
por dos tipos de archivos:
Archivos
de datos: contiene los datos de la base de datos internamente, está
compuesto por páginas enumeradas secuencialmente que representa la unidad
mínima de almacenamiento. Cada página tiene un tamaño de 8kb de información.
Existen diferentes tipos de páginas, a tener en cuenta:
Páginas
de datos: es el tipo principal de páginas y son las que almacenan los registros
de datos. Páginas de espacio libre (PFS Page Free Space): almacenan información
sobre la ubicación y el tamaño del espacio libre.
Paginas
GAM and SGAM: utilizadas para ubicar extensiones.
Páginas
de Mapa de Ubicaciones de índices (IAM – IndexAllocationMap): contiene
información sobre el almacenamiento de páginas de una tabla o índice en
particular. Páginas Índices: Utilizada para almacenar registros de índices.
Archivo de Registro de
Transacciones: El propósito principal del registro de
transacciones es la recuperación de datos a un momento en el tiempo o
complementar una restauración de copia de respaldo completa (full backup). El
registro de transacciones no contiene páginas, sino entradas con todos los
cambios realizados en la base de datos, como son las modificaciones de datos,
modificaciones de la base de datos y eventos de copia de seguridad y
restauración. El acceso a datos es secuencial, ya que el registro de
transacciones se actualiza en el mismo orden cronológico en el que se hacen las
modificaciones.
Este
archivo no puede ser leído por herramientas de usuario de SQL auqnue existen
herramientas de terceros que leen este archivo para recuperar los cambios
efectuados. Dependiendo de la versión el registro de transacciones se utiliza
para otros propósitos como por ejemplo bases de datos espejo (mirror) y
transporte remoto de transacciones (log shipping).
Para
muchos de los administradores de bases de datos, la imagen anterior representa
la parte lógica y la parte física, donde:
Data File:
Los
datafiles son los archivos físicos en los que se almacenan los objetos que
forman parte de un tablespace. Un datafile pertenece solamente a un tablespace
y a una instancia de base de datos. Un tablespace puede estar formado por uno o
varios datafiles. Cuando se crea un datafile, se debe indicar su nombre, su
ubicación o directorio, el tamaño que va a tener y el tablespace al que va a
pertenecer. Además, al crearlos, ocupan ya ese espacio aunque se encuentran
totalmente vacíos, es decir, Oracle reserva el espacio para poder ir llenándolo
poco a poco con posterioridad. Por supuesto, si no hay sitio suficiente para
crear un archivo físico del tamaño indicado, se producirá un error y no se
creará dicho archivo.
Cuando
se van creando objetos en un tablespace, éstos físicamente se van almacenando
en los datafiles asignados a dicho tablespace, es decir, cuando creamos una
tabla y vamos insertando datos en ella, estos datos realmente se reparten por
los archivos físicos o datafiles que forman parte del tablespace. No se puede
controlar en qué archivo físico se almacenan los datos de un tablespace. Si un
tablespace está formado por 2 datafiles y tenemos una tabla en ese tablespace,
a medida que vamos insertando filas éstas se almacenarán en cualquiera de los
dos datafiles indistintamente, es decir, unas pueden estar en un datafile y
otras en otro.
El
espacio total disponible en un tablespace es lógicamente la suma de los tamaños
que ocupan los archivos físicos o datafiles que lo forman. Como hemos indicado
estos datafiles, al crearlos, están totalmente vacíos, simplemente es un
espacio reservado y formateado por Oracle para su uso. A medida que se van
creando objetos en ellos como tablas, índices, etc. y se van insertando
registros en estas tablas, los datafiles se van llenando o, lo que es lo mismo,
el tablespace se va llenando.
Tienen
las siguientes características:
Ø Un archivo sólo puede estar asociado con una
base de datos.
Ø Los archivos de datos tienen atributos que
permiten reservar automáticamente para ellos extensiones cuando se acaba el
espacio.
Ø Uno o más archivos de datos forman una
unidad lógica de almacenamiento llamada tablespace.
Os Block:
Conocidos como Disk Block, estos mapean a los data blocks. A la hora de crear
una nueva base de datos se debe indicar cuántos bloques de sistema operativo
formarán un bloque de datos.