Está en la página 1de 4

Administración de Bases de Datos

Arquitectura de Oracle 12c

1. Versiones de Oracle 12c


a. Personal Edition
b. Standard Edition 2
c. Enterprise Edition
d. Express Edition

2. Posibles arquitecturas
a. Un servidor con una instancia conectada a una base de datos.
b. Un servidor con varias instancias, cada una de ellas conectada a una
base de datos diferente.
c. Varios servidores, cada uno con una instancia… y todas las instancias
conectadas a una misma base de datos en otro servidor (Oracle RAC
– Real Application Clusters)

Una instancia SIEMPRE estará asociada a UNA SOLA base de


datos.

3. Concepto de Instancia
Memoria RAM disponible para gestionar los procesos de la base de datos.
En dicha memoria RAM hay estructuras de memoria y procesos.

Estructuras de memoria:
 System Global Area (SGA): Área de memoria compartida por todos
los procesos background y del servidor.
 Program Global Area (PGA): Area de memoria NO compartida.
Cuando un proceso background o de servidor inicia, se crea un PGA
para él. Cuando el proceso finaliza, desaparece el respectivo PGA.
Cuando un usuario se va a conectar a una base de datos, se crea un
server process.
Procesos:
 Background: Procesos que manejan las estructuras de memoria,
asincronicamente realizan operaciones de I/O y realizan operaciones
de mantenimiento. Hay procesos background obligatorios y otros
 Server Processes
System Global Area (SGA)
Componente Función
Database Buffer Cache Memoria limitada que sirve para llevar
los datos que se necesitan procesar en
un momento dado. Este cache debe ser
lo suficientemente grande para evitar
lectura y escritura frecuente a disco.
Todos los procesos de usuario
conectados a la base de datos
comparten este cache.
Shared Pool Almacena información que puede ser
compartida por todos los usuarios:
 Instrucciones SQL ya parseadas
y que pueden ser reutilizadas.
 Metadatos
 Procedimientos almacenados
Redo Log Buffer Se almacenan todos los cambios
hechos a los datos de la base de datos.
Necesario en caso de tener que hacer
un redo.
Large Pool Memoria opcional usada para grandes
operaciones de I/O.
Java Pool Utilizada por las aplicaciones en Java
que usen la base de datos.
Streams Pool Area usada para replicación de datos.
Result Cache Guarda resultados de operaciones de
consulta. Si un usuario va a realizar una
consulta que ya fue ejecutada
anteriormente, traer los resultados de
este cache.

Background Processes
Proceso Funcion
DBW Database Writer Baja a disco lo que hay en el Database
Buffer Cache
LGWR Log Writer Baja a disco lo que hay en el Redo Log
Buffer
SMON System Monitor Administra recuperaciones ante fallas
del servidor.
PMON Process Monitor Administra recuperaciones ante fallas
de un proceso.
LREG Administra el listener de Oracle.
CKPT Administra los checkpoints en la base
de datos.
4. Arquitectura Multitenant
Arquitectura basada en el concepto de CONTENEDORES.

Un CDB (Container Database) se compone de:


 Un root container (CDB$root)
 Un seed PDB (Pluggable Database) (PDB$seed)
 Uno o varios PDBs de usuario.

Uno de los principales objetivos de esta arquitectura es que cada PDB tenga
una relación uno a uno con una aplicación.

Root container: Tiene múltiples archivos de datos. Almacena metadatos


propios de Oracle y usuarios comunes (usuarios compartidos por todos los
PDBs, por ejemplo, SYS, SYSTEM).
Seed PDB: PDB creado por Oracle con la plantilla inicial para cualquier PDB
de usuario posteriormente creado.
PDB de usuario: Múltiples archivos que contienen datos y código necesario
para soportar una aplicación. Los usuarios finales interactúan con este tipo
de PDBs, no con el seed ni con el root.

5. Estructuras LOGICAS de almacenamiento


La principal estructura LOGICA de almacenamiento es el TABLESPACE.
La única estructura FISICA de almacenamiento es el DATAFILE.

Un Tablespace contiene uno o muchos Datafiles.


Un Datafile solo está contenido en un Tablespace.

Una Base de Datos corresponde a uno o muchos Tablespaces.


Un Tablespace contiene uno o muchos Segmentos.
Un Segmento contiene uno o muchos Extends.
Un Extend contiene uno o muchos Bloques de Datos contiguos.

Cuando se crea un CDB o un PDB(que no sea el seed PDB), estos contienen,


por defecto, los siguientes tablespaces:
 SYSTEM: Tablespace para almacenar datos del funcionamiento
propio de Oracle. Aca están los metadatos de las estructuras propias
del sistema.
 SYSAUX: Tablespace auxiliar que sirve para liberarle carga al
tablespace SYSTEM.
 TEMP: Tablespace donde se almacenan objetos del esquema
solamente mientras dura una sesión. El root container tiene un
tablespace TEMP para uso de todos los usuarios, pero si se necesita
se puede crear un tablespace aparte para un PDB.
 UNDO: Tablespace donde se almacenan datos necesarios para hacer
undo o rollback. Existe en el root container para uso de todos los
usuarios, pero podría suceder que un PDB necesite crear su propio
tablespace UNDO.
 USERS: Tablespace donde se almacenan los datos y objetos del
usuario. Cada PDB tiene su tablespace USERS.
El seed PDB contiene solamente los primeros tres tablespaces (SYSTEM,
SYSAUX, TEMP).

6. Archivos adicionales importantes


Los siguientes son archivos que no están en ningún container pero que son
necesarios para el funcionamiento de Oracle:

 Archivos de Control (Control Files): Almacena metadatos acerca de


los datafiles y de los online redo log files. Esta información es
necesaria para abrir la base de datos. También contiene metadatos
que son útiles cuando la base de datos no está abierta.
 Archivos Online Redo Log (Online Redo Log Files): Almacena
cambios ocurridos en la base de datos, a medida que van ocurriendo.
 Archivo de Parámetros de Inicialización (pfile) o Archivo de
Parametros del Servidor (spfile): Contiene los parámetros que
indicaran como funcionara el motor.
 Archivos de Backup: Para restaurar la base de datos, en caso de fallo.
 Archivos Archived Redo Log (Archived Redo Log Files): Igual que el
Online Redo Log pero con los cambios históricos ocurridos en la base
de datos. Periódicamente lo que hay en el Online Redo Log se baja a
este archivo.
 Archivo de Log de Alertas: Almacena, cronológicamente, mensajes de
alerta y error generados por el motor.
 Archivos de Trazo (Trace Files): Almacena información de errores
ocurridos en la ejecución de procesos del servidor o procesos
background. Cada proceso de servidor o background puede tener su
propio archivo de trazo.

También podría gustarte