ESTRUCTURAS FÍSICAS DE LAS BASE DE DATOS
Estructura física de la base de datos Oracle:
1.Estructura de la memoria
Es la estructura de memoria compartida que contienen datos e información de control para una instancia de una base de datos, cada instancia tiene sus propias estructuras de memoria y se localiza en la memoria virtual del computador. Las estructuras de memoria se denominan System Global Area (SGA) la cual es un área compartida por todos los usuarios.
Fondo común compartido (Shared pool)
Este se utiliza durante el procesamiento de comando y tiene dos zonas:
- Library Cache
- Data Dictionary Cache (Dictionary Cache o Row Cache)
Área de Memoria rápida (Dtabase buffer cache)
Mantiene los bloques de datos leídos directamente de los archivos de datos y esta organizada en dos listas.
- Lista de sucios. Bloques que han sufrido modificaciones y no han sido escritos en disco.
- Lista de menos recientemente usados: mantiene los bloques libres, los bloques a los que se está accediendo actualmente y los bloques sucios que aún no han sido remitidos a la lista de sucios.
Área de registro de rehacer (Redo log buffer)
Es un buffer circular que mantiene todos los cambios que han sido realizados sobre la base de datos por operaciones de insert, update, delete, create, alter y drop.
2. Archivos
En Oracle los archivos de clasifican en
2.1 Los Archivos de Datos (Datafiles): sirve para
el almacenamiento físico de las tablas, índices y procedimientos, estos son los
únicos que contienen los datos de los usuarios de la base de datos.
2.2 Archivos de Control (control files): tiene la descripción
física y dirección de los archivos para el arranque correcto de la base de
datos
2.3 Archivos de Rehacer (redo log files): tienen
los cambios que se han hecho a la base de datos para recuperar fallas o para
manejar transacciones. Debe esta conformado por dos grupos como mínimo y cada
grupo debe esta en discos separados. El principal propósito de estos archivos
es de servir de respaldo de los datos en la memoria RAM.
2.4 Archivos fuera de línea (archived files):
archivos opcionales donde se pueda guardar información vieja de los archivos de
rehacer, convenientes para respaldos de base de datos.
3.Los procesos
Los procesos son programas que se ejecutan para permitir el
acceso a los datos, se cargan en memoria y son transportados para los usuarios
y son clasificados en tres grupos:
3.1. Procesos de Base
o de Soporte
Se encargan de traer datos desde y hacia la estructura de
memoria (SGA), cada uno tiene su propia área de memoria.
Tipos de procesos:
Database Writer (DBWR): se encarga de copiar los bloques
desde el buffer cache hasta la memoria secundaria.
Log Writer (LGWR): escribe las entradas desde el Log Buffer
a disco.
La escritura de bloques del Redo Log Buffer a disco ocurre
secuencialmente y bajo las siguientes reglas:
- Cuando el Redo Log está lleno en un 33% o más.
- Cuando oucrre un time-out (cada tres segundos).
- Antes de que el DBWR escriba algún bloque modificado a disco.
- Cuando una transacción se compromete.
Checkpoint (CKPT): encargado de notificar al DBWR para que
se escriban en los archivos de datos todos los bloques contenidos en la lista
de sucios. Este proceso es invocado en intervalos de tiempo determinados. El
CKPT es opcional, si no existe las funciones son realizadas por el LGWR.
System Monitor (SMON): Encargado de realizar un proceso de recuperación
rápida cada vez que una instancia es inicializada. Esta labor incluye limpieza
de las estructuras de datos de soporte a la ejecución de consultas y llevar a
la base de datos a un estado estable previo a la ejecución de aquellas
transacciones que no hayan culminado exitosamente. También se encarga de
desfragmentar el espacio físico de almacenamiento uniendo bloques de datos
libres en la memoria secundaria.
Process Monitor (PMON): lleva la pista de los procesos de la
base de datos y efectúa labores de limpieza (liberar recursos y bloques
ocupados en los cache’s) si alguno de ellos termina prematuramente.
Archiver (ARCH): copia las bitácoras activas cuando éstas se
encuentran llenas. Este proceso se encuentra activo sólo cuando el DBMS se
encuentra operando en modo ARCHIVELOG, el único modo que admite recuperación de
los datos frente a fallas del sistema.
Recoverer (RECO): resuelve transacciones distribuidas que se
encuentran pendientes debido a la red o a fallas ocurridas en la base de datos
distribuida.
Dispatcher (Dnnn): se crea por cada sesión de trabajo
activa; es responsable de enrutar los requerimientos desde el proceso usuario,
al cual se encuentra asociado, hacia los procesos servidores y retornar la
respuesta al proceso de usuario adecuado. Estos procesos se crean solo cuando
se ejecuta con la opción multithreading.
3.2 Procesos de
Usuario:
se encarga de ejecutar el código de aplicación del usuario y
manejar el perfil del usuario con sus variables de ambiente. Estos procesos no
se pueden comunicar directamente con la base de datos, por lo que la
comunicación la establecen mediante procesos de servidores.
3.3. Procesos de
Servidores
Estos procesos ejecutan las órdenes SQL de los usuarios y
llevan los datos del buffer caché para que los procesos de usuario puedan tener
acceso a los datos.
Estructura lógica de la base de datos Oracle:
Arquitectura MySQL
MySQL es un sistema
de bases de datos relacional. Eso significa que la información está organizada
en bases de datos, que están compuestas por tablas, que están compuestas por
registros, que están compuestos por columnas.
Además de los datos
que almacenamos, las tablas pueden contener índices, y algunas de sus columnas
tienen propiedades especiales como claves primarias y claves foráneas que permiten
establecer relaciones entre las tablas.
Los sistemas que
manejan estas estructuras se pueden describir en capas.
En general, un sistema
de bases de datos relacional tiene tres capas:
CAPA APLICACION
La capa de
aplicación es la parte más externa del sistema y es la interface a través de la
que los usuarios se comunican con el sistema.
La funcionalidad
central del sistema está en la capa lógica. Es donde se realizan todas las operaciones
del sistema.
CAPA LOGICA
En esta capa se
realizan varias operaciones. La primera y que sirve de interface con la capa de
aplicación es el procesamiento de las instrucciones SQL. Después hay dos módulos:
el manejo de transacciones, y la recuperación después de errores. Finalmente está
la parte que se encarga de traducir las instrucciones SQL en acciones sobre el almacenamiento
de datos.
CAPA FISICA
Finalmente, la capa
física es donde están almacenados los datos.






No hay comentarios:
Publicar un comentario