Este artículo mostrará brevemente como es la arquitectura de un servidor Oracle.
Un servidor Oracle consiste de dos entidades: La instancia y la base de datos (independientes pero conectados). Durante el proceso de creación de una base de datos, se crea primero la instancia, y de ahí se crea la base de datos.
Una instancia de Oracle consta tiene estructuras de memoria estructuras de memoria y procesos; su existencia es pasajera ya que se halla en la RAM y el CPU, es decir, el tiempo de vida de la instancia durará mientras exista en memoria. Por otro lado, la base de datos consta de archivos físicos localizados en el disco duro, y una vez creada existirá indefinidamente (hasta que deliberadamente los archivos sean eliminados). Oracle define esta arquitectura para garantizar una abstracción e independencia entre las estructuras lógicas (que ven los programadores) de las estructuras físicas (que ven los administradores de sistemas); únicamente el DBA conoce las dos partes de la historia.
Instancia:
La instancia de Oracle consta de un área de memoria compartida conocida como SGA (System Global Area). Esta área de memoria consta de menos tres estructuras básicas:
- Shared Pool: Incluye la Library Cache (área de memoria que almacena código recientemente ejecutado) y el Data Dictionary Cache (área que almacena las definiciones de objetos usados recientemente)
- Database Buffer Cache: Área de trabajo para la ejecución de SQL
- Log Buffer: Área que almacena todos los cambios que son realizados en el Database Buffer Cache
A parte de estas tres estructuras principales, también existen otras 3 que son opcionales:
- Large Pool: Área utilizada para mejorar el rendimiento en servidores compartidos (multithreaded) o para procesos I/O de disco y cinta
- Java Pool: Área utilizada si se tiene una aplicación que va a ejecutar procedimientos Java (ya que Oracle maneja sus APIs con Java muchos administradores consideran a esta área de memoria como obligatoria)
- Streams Pool: Utilizado para manejo de Streams
A parte del SGA, la instancia de Oracle tiene 5 procesos conocidos como Background process:
- SMON: Habilita la conexión entre la instancia y la base de datos. Permite la recuperación de la base de datos después de una falla
- PMON: Se encarga de gestionar las sesiones de usuario. Cuando un proceso de usuario falla, se encarga de limpiar los procesos restantes
- CKPT: Se asegura que la instancia esté sincronizada con la base de datos.
- LGWR: Escribe todos los cambios a los datos que se realizaron en el Database Buffer Cache en los Redo Log Files del disco
- DBWn: Escribe los bloques modificados desde el Database Buffer Cache a los archivos de disco
Base de datos:
La base de datos abarca las estructuras físicas que se encuentran en disco. Estos archivos se dividen en dos: Requeridos y Externos.
Entre los archivos requeridos están:
- Control File: Almacena el status de las estructuras físicas de la base de datos.
- Online Redo Log Files: Almacenan un registro de los cambios realizados a la base de datos mientras estos de van dando
- Datafiles: Son el repositorio de la información
En cambio, los archivos externos son:
- Parameter File: Define la instancia y los parámetros de inicialización. Hay de dos tipos Dinámico (binario, que no se puede ejecutar y se actualiza constantemente) y estático (que se lo puede editar mediante un editor ASCII y que solamente es leído una sola vez cuando la instancia se inicia.)
- Password File: Archivo de sistema que almacena los nombres de usuario y contraseña (encriptadas) para poder autenticar a un usuario sin la necesidad del diccionario de datos.
- Archive Log Files: Copias de los Online Redo Log Files llenos.
0 comentarios:
Publicar un comentario