PorMyWebStudies
Diseño de base de datos con una sola instancia - oracle dba
Una instancia se compone de estructuras en memoria y procesos, cuya existencia es temporal en la RAM y CPU. Cuando se apaga la instancia, toda su información desaparece. Por otro lado, una Base de Datos está compuesta por archivos físicos que persisten hasta que se eliminan, sin importar si están activados o no.
Los procesos de la instancia se conocen como procesos de segundo plano [background processes].
Las sesiones de usuario consisten en un proceso ejecutado en la máquina del usuario que se conecta a un proceso del servidor que se ejecuta en la instancia del servidor. Esta conexión suele realizarse a través de una red local [LAN] y usa el protocolo TCP.
Las estructuras de memoria se alojan en segmentos de memoria compartida proporcionados por el sistema operativo y se conocen como área global del sistema [SGA].
Los procesos de usuario generan SQL, mientras que los procesos del servidor ejecutan esas sentencias SQL. Los procesos de servidor pueden ejecutarse en primer plano, a diferencia de los procesos en segundo plano que componen la instancia. Cada proceso de servidor tiene su propia área de memoria privada llamada área global de programa [PGA].
La PGA es una memoria privada para cada sesión, mientras que la SGA es compartida por todos los procesos en segundo plano y primer plano. El tamaño de la PGA de una sesión puede variar según las necesidades de memoria, y el DBA puede establecer un límite para la cantidad total de PGA.
La asignación de memoria puede ser totalmente automatizada. El DBA solo necesita asignar la cantidad general de memoria para SGA y PGA, y Oracle se encargará de manejarla de manera óptima. El DBA también puede controlar manualmente la asignación de memoria o usar un enfoque intermedio.
La SGA es compartida por todos los procesos, pero la PGA solo es accesible por el proceso de servidor al que está asignada.
Las estructuras físicas de una Base de Datos Oracle incluyen archivos de datos, redo logs y archivos de control. Los administradores ven estas estructuras físicas, mientras que los usuarios ven las estructuras lógicas, como tablas.
Oracle garantiza la abstracción entre datos lógicos y físicos. Los desarrolladores no pueden saber dónde se encuentran físicamente los datos, ya que solo tienen acceso a las estructuras lógicas como tablas. Solo el DBA tiene acceso a ambas capas.
Los datos se almacenan en archivos de datos, sin límite en la cantidad de estos archivos. La abstracción permite mover, redimensionar o agregar archivos de datos sin afectar a las aplicaciones.
La relación entre estructuras físicas y lógicas se mantiene en el Diccionario de Datos, que almacena metadatos sobre la Base de Datos. El DBA puede consultar vistas en el diccionario para conocer la ubicación exacta de cada parte de las tablas.
El Diccionario de Datos es un conjunto de tablas almacenadas en la Base de Datos.
Un principio clave del RDBMS es la integridad de los datos, lo que significa que:
Un cambio de vector es una modificación realizada por sentencias DML [Insert, Update, Delete]. Cuando una sesión modifica un dato, el cambio se registra en los bloques de datos y en el redo log. Si un archivo de datos se daña, se puede restaurar una copia de seguridad y Oracle aplicará los cambios registrados en el redo log.
El archivo de control almacena detalles sobre las estructuras físicas de la Base de Datos y sirve como punto de inicio para enlazar las estructuras lógicas. Cuando se inicia una instancia, primero se lee el archivo de control, que contiene la información necesaria para conectarse a la Base de Datos y al Diccionario de Datos.
Una instancia simple de Base de Datos está formada por cuatro componentes principales: