Sie sind auf Seite 1von 30

BD5502 ADMINISTRACIN DE BASE DE DATO

Arquitectura de un Servidor de
Base de Datos Oracle

Unidad de Aprendizaje N1
Creacin y Administracin bsica
de una Base de Datos Oracle
Aprendizajes Conceptuales:
Reconocer las tres estructuras principales en la
arquitectura del servidor de base de datos Oracle y las
funciones que cada uno de sus componentes cumplen para
efectuar las tareas de administracin de un Servidor de
Base de Datos Oracle de manera eficiente.

Objetivos de la Clase

Describir los principales componentes de un Servidor de Base de Datos


Oracle.
Explicar las diferentes Estructuras de Memoria de un Servidor de Base de
Datos Oracle
Describir los Procesos Background de un Servidor de Base de Datos
Oracle.
Explicar la relacin entre las estructuras de almacenamiento lgicas y
fsicas de la Base de Datos Oracle.

Base de Datos Oracle

En Sistema de Gestin de Bases de Datos Relacionales (RDBMS) de


Oracle proporciona un enfoque abierto, completo e integrado a la
gestin de informacin.

Conectndose a un Servidor

CLIENTE

NIVEL MEDIO

SERVIDOR

Visin General de la Arquitectura del Servidor


de Base de Datos Oracle
Instancia
PGA
Proceso
servidor

Estructuras de Memoria
(rea Global del Sistema)
Servidor

Estructuras de Procesos

Proceso
usuario

Cliente

Base de Datos
(Estructuras de Almacenamiento)

Instancia: Configuraciones de Base de Datos


Sistema con clusters

Sistema sin clusters

I1

I1

I2

I3

I2

D1
D2
Almacenamiento
Local

Conexin a la Instancia de Base de Datos

Usuario

Conexin: comunicacin entre un proceso de usuario y una instancia.


Sesin: conexin concreta de un usuario a una instancia mediante un
proceso de usuario.

SQL> Select

Proceso
de usuario

Proceso
de servidor
Conexin

Sesin

Sesin

Estructuras de Memoria de la Base de Datos


Oracle
Program Global Area (PGA)
Stack
Space

User
Global
Area

Server
process 1

Shared pool

Large pool

PGA
Stack
Space
Server
process 2

Database
buffer
cache

Java pool

Redo log
buffer

Streams
pool

System Global Area (SGA)

KEEP
buffer pool
RECYCLE
buffer pool
nK buffer
cache

User
Global
Area

Shared Pool

En una parte de la SGA.


Contiene:
Library cache

Shared SQL area

Data dictionary cache

Estructuras de control

Shared
SQL area

Data dictionary
cache
Fixed Area

Library
cache
Shared pool

Large pool

Cach de
buffers de la
base de datos

Java pool

Otros
Pool de
Buffer de buffers KEEP
redo log
RECYCLE
buffer pool

Streams
pool

System Global Area (SGA)

nK buffer
cache

Database Buffer Cache

Es parte de la SGA.
Contiene copias de los bloques de datos que se leen de los data files
(archivos de datos).
Es compartida por todos los usuarios en forma simultnea.

Pool
compartido

Large pool

Database
buffer
cache

Java pool

Redo log
buffer

Streams
pool

System Global Area (SGA)

KEEP
buffer pool
RECYCLE
buffer pool
nK buffer
cache

Redo Log Buffer

Es un buffer circular de la SGA.


Contiene informacin sobre los cambios realizados en la base de
datos.
Contiene entradas de redo con informacin de los cambios de redo
realizados por operaciones como DML y DDL.

Shared
pool

Large pool

Database
buffer
cache

Java pool

Redo log
buffer

Streams
pool

System Global Area (SGA)

KEEP
buffer pool
RECYCLE
buffer pool
nK buffer
cache

Large Pool

Proporciona grandes asignaciones de memoria para:

Memoria de sesin del servidor compartido y la interfaz Oracle XA

Procesos de E/S del servidor.

Operaciones de copia de seguridad y restauracin de Oracle


Database.

Shared
pool

Large pool

Database
buffer
cache

Java pool

Redo log
buffer

Streams
pool

System Global Area (SGA)

KEEP
buffer pool
Free
Parallel
I/O buffer
RECYCLE
memory
Query
buffer pool
Response
Request
Advanced
queue
Queuing
nK buffer queue
cache
Large pool

Java Pool y Streams Pool

La Java Pool es utilizada para almacenar todo el cdigo Java


especfico de la sesin y los datos en JVM.
La Streams Pool se utiliza exclusivamente en Oracle Streams para:

Almacenar mensajes de cola en buffer.

Proporcionar memoria para los procesos de Oracle Streams.

Shared
pool

Large pool

Java pool

Database
buffer
cache

Java pool

Redo log
buffer

Streams
pool

System Global Area (SGA)

KEEP
buffer pool
RECYCLE
buffer pool
nK buffer
cache
Streams
pool

rea Global de Programa (PGA)


PGA

Cursor
State

Stack
Space

User
Global
Area

Large pool

Hash
Area

Create Bitmap Area


User Session
Date

Server
process 1

Shared pool

Sort
Area

Bitmap Merge Area


SQL
Working Areas

Database
buffer
cache

Java pool

Redo log
buffer

Streams
pool

System Global Area (SGA)

KEEP
buffer pool
RECYCLE
buffer pool
nK buffer
cache

Arquitectura de Proceso
O DE
PROCES
O
USUARI

PROCESOS EN
UN SERVIDOR
DE BASE DE
DATOS ORACLE

PROCESOS DE BASE DE
DATOS

PROCES
O S DE
APLICAC
IN/DEA
MONS

Estructuras de Procesos
Instances (ASM and Database separate)
System Global Area (SGA)
PGA
Sever
process
Listener

Background processes
Required: DBWn

CKPT

LGWR SMON

ARCn

ASMB

RBAL

Optional:

PMON

Others

Grid infrastructure Processes


(ASM and Oracle Restart)

User
process

ohas

ocssd

diskmon

orarootagent

oraagent

cssdagent

RECO

Proceso Database Writer (DBWn)

Escribe los buffers modificados (dirty) de la database buffer cache en


el disco:

De forma asncrona mientras realiza otro procesamiento.

Para avanzar el punto de control (ckeckpoint).

DBWn
Database buffer
cache

Proceso
Database Writer

Data files

Proceso Log Writer (LGWR)

Escribe el buffer de redo log en un archivo redo log en el disco.


Escribe:
Cuando un proceso de usuario confirma una transaccin.
Cuando el buffer de redo log est lleno en un tercio.
Antes de que un proceso DBWn escriba los buffers modificados
en el disco.
Cada 3 segundos.

LGWR
Redo lo buffer

Proceso Log writer

Redo log files

Proceso Checkpoint (CKPT)

Registra informacin de checkpoint (punto de control) en:

Archivo de control (control file).

Cada cabecera del archivo de datos (data files).

CKPT

Control file

Proceso
Checkpoint

Data files

Proceso System Monitor (SMON)

Realiza la recuperacin al iniciar la instancia.


Limpia los segmentos temporales no utilizados

SMON

Instancia

Proceso
System Monitor
Segmento
temporal

Proceso Monitor Process (PMON)

Realiza la recuperacin de procesos cuando falla un proceso de


usuario.

Limpia la database buffer cache.

Libera recursos utilizados por el proceso de usuario


Supervisa el timeout de sesin inactiva .
Registra de forma dinmica los servicios de base de datos con el
listener.
Server
process
PMON
Usuario
Proceso de
usuario fallido

tnslsnr

Database buffer
cache

Proceso de Recuperacin (RECO)

Se utiliza en la configuracin de base de datos distribuida.


Se conecta automticamente a otras bases de datos relacionadas con
transacciones distribuidas dudosas.
Resuelve automticamente todas las transacciones dudosas.
Elimina las filas que se correspondan con transacciones dudosas

RECO

Proceso de
recuperacin
en base de datos A

Transaccin dudosa
en base de datos B

Procesos Archiver (ARCn)

Copian los archivos redo log en el dispositivo de almacenamiento


designado despus de que se produzca un cambio de log.
Pueden recopilar datos de redo de transaccin y transmitirlos a los
destinos en espera.

ARCn

Procesos Archiver

Copias de
archivos redo log

Destino de archivo

Arquitectura de Almacenamiento de
Base de Datos

Control files

Data files

Online redo log files

Parameter files

Backup files

Archived redo log files

Password file

Alert log
Trace files

Estructuras de Base de Datos


Lgicas y Fsicas
Base de Datos

Tablespace

Data File

G
I

Segmento

C
A
S

Extent

Bloque de Datos
Oracle

Sistema de almacenamiento

S
I
C

SAN

NFS

NAS

ASM

Exadata

RAW

File System

Segmentos, Extensiones y Bloques

Los segmentos existen en un tablespace.


Los segmentos son recopilaciones de extensiones.
Las extensiones son conjuntos de bloques de datos.
Los bloques de datos estn asignados a bloques de disco.

Segmento

Extensiones

Bloques de
datos

Bloques de disco
(almacenamiento de File
System)

Tablespaces y Data Files


Tablespace 1

Tablespace 2 (Bigfile)

Datafile 1

Datafile 3

Datafile 2

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

8 KB

Extent
64 KB

Extent
96 KB

Segmento
160 KB

Slo se permite
1 datafile
<= 128 TB

Tablespaces SYSTEM y SYSAUX


Son obligatorios y se crean junto con la base de datos. Deben estar en
lnea.

El tablespace SYSTEM se utiliza para la funcionalidad principal de la


base de datos (por ejemplo las tablas del diccionario de datos).

El tablespace auxiliar SYSAUX se utiliza para los componentes


adicionales de base de datos (como el repositorio de Enterprise
Manager).

No se recomienda el uso de los tablespaces SYSTEM y SYSAUX para


almacenar los datos de la aplicacin.

Resumen de la Clase

Se describieron los principales componentes de un Servidor de Base de


Datos Oracle.
Se explicaron las diferentes Estructuras de Memoria de un Servidor de
Base de Datos Oracle
Se describieron los Procesos Background de un Servidor de Base de Datos
Oracle.
Se explic la relacin entre las estructuras de almacenamiento lgicas y
fsicas de la Base de Datos Oracle.