M patino abds1
-
Upload
mpatinop -
Category
Technology
-
view
338 -
download
2
Transcript of M patino abds1
Por : Mauro Patiño16/01/2011
ADMINISTRACIÓN DE BASE DE DATOS Semana I
ARQUITECTURA BD
Administración de Base de Datos CONTENIDO Introducción Tareas del Administrador de la Base de Datos Visión General de los Componentes Principales Establecimiento de una Conexión y Creación de una
Sesión Base de Datos Oracle. Estructura Física. Estructura Lógica.
Tareas del Administrador de la Base de Datos
Los administradores de bases de datos son los responsables de mantener Oracle Server con el fin de que pueda procesar las solicitudes de usuario. Entre las actividades principales que un DBA tiene a cargo están:
Planificar y crear bases de datos Gestionar la disponibilidad de la base de datos Gestionar las estructuras físicas y lógicas Gestionar el almacenamiento basándose en el diseño Gestionar la seguridad Administración de la red Copia de seguridad y recuperación Ajuste de la base de datos
Visión General de los Componentes Principales Oracle Server.- Es un sistema de gestión de bases de datos que
proporciona un enfoque abierto, global e integrado de la gestión de información que se encuentra formado por una instancia Oracle y una base de datos Oracle .
Instancia Oracle.- Una instancia Oracle es un medio de acceso a una base de datos Oracle por la que siempre abre una única base de datos, la cual está formada por estructuras de procesos en segundo plano y de memoria.
Base de datos Oracle: Está formada por archivos del sistema operativo, también llamados archivos de base de datos, que proporcionan el almacenamiento físico real para la información de la base de datos.
Visión General de los Componentes Principales Otros archivos clave: Los archivos que no son de base de datos
se utilizan para configurar la instancia, autenticar los usuarios con privilegios y recuperar la base de datos en caso de que se produzca un fallo de disco
Procesos de usuario y de servidor: Los procesos de usuario y de servidor son los procesos principales implicados en la ejecución de una sentencia SQL. Sin embargo, hay otros procesos que pueden ayudar al servidor a finalizar el procesamiento de la sentencia SQL.
Otros procesos: Existen otros muchos procesos que se utilizan en otras opciones, como Gestión de Colas Avanzada, Real Application Clusters, Servidor Compartido, Replicación Avanzada
Establecimiento de una Conexión y Creación de una Sesión Para que los usuarios puedan ejecutar sentencias SQL en una base de datos Oracle, se deben conectar a una instancia. Conexión.- Una conexión no es más que una ruta de comunicación entre un proceso de usuario y Oracle Server .Sesiones .- Una sesión es una conexión específica de un usuario a Oracle Server. La sesión se inicia cuando Oracle Server valida al usuario, y finaliza cuando el usuario se desconecta o cuando se produce una terminación anormal.
Base de Datos Oracle
Base de Datos Oracle El objetivo general de una base de datos es el de almacenar y recuperar la información relacionada. Una base de datos Oracle tiene una estructura lógica y una física. Una base de datos Oracle consta de tres tipos de archivos.
Los archivos de datos que contienen los datos reales de la base de datos
Los archivos redo log que contienen un registro de los cambios efectuados en la base de datos para activar la recuperación de los datos en caso de fallos
Los archivos de control que contienen la información necesaria para mantener y verificar la integridad de la base de datos.
Estructura Física
La estructura física incluye tres tipos de archivos: Archivos de control Archivos de datos Archivos redo log online
Estructura físicaEstructura de la memoria
La estructura de la memoria de Oracle está formada por dos áreas de memoria llamadas: SGA (Área Global del Sistema): Asignada al iniciar la
instancia y componente fundamental de una instancia Oracle PGA (Área Global de Programas): Asignada al iniciar el
proceso de servidor.
Estructura física
Área Global del Sistema El área SGA está formada por varias estructuras de la memoria: – Conjunto Compartido – Caché de Buffers de Base de Datos. – Buffer de Redo Log – Otras estructuras (por ejemplo, gestión de bloqueos y bloqueos internos, datos estadísticos).
Estructura física
SGA DinámicaA partir de Oracle9i, el área SGA dinámica implementa una infraestructura que permite modificar la configuración del SGA sin cerrar la instancia. Asimismo, esto permite modificar el tamaño de la caché de buffers de base de datos, del conjunto compartido y del conjunto grande sin cerrar la instancia. En principio, se podría subconfigurar la caché de buffers de base de datos y el conjunto compartido, que podrían aumentar y reducirse posteriormente en función de sus respectivas cargas de trabajo, hasta un máximo especificado por SGA_MAX_SIZE.
Estructura física Área Global del Sistema.- Esta área es dinámica, su tamaño
definido por el parámetro SGA_MAX_SIZE, asignada y con seguimiento en gránulos por componentes del SGA
Unidad de Asignación.- Un gránulo es una unidad de asignación de memoria virtual contigua. El tamaño de un gránulo depende del tamaño del SGA total estimado cuyo cálculo se basa en el valor del parámetro SGA_MAX_SIZE.
Shared pool - Conjunto compartido .- Se utiliza para almacenar: Las últimas sentencias SQL ejecutadas y las últimas definiciones de datos utilizadas. Se encuentra formado por dos estructuras de memoria clave relacionadas con el rendimiento: Caché de Biblioteca y Caché del Diccionario de Datos; Y su Tamaño está definido por el parámetro SHARED_POOL_SIZE
Estructura física Library cache - Caché de Biblioteca.- Permite almacenar información
acerca de las sentencias SQL y PL/SQL utilizadas más recientemente, también permite compartir las sentencias utilizadas con mayor frecuencia, esto se lo realiza por medio de un algoritmo LRU (utilizado menos recientemente).
Data Diccionary cache - Caché del Diccionario de Datos.- En este espacio de memoria se almacena el conjunto de las definiciones utilizadas más recientemente en la base de datos, dentro de ellas incluye información acerca de archivos de base de datos, tablas, índices, columnas, usuarios, privilegios y otros objetos de base de datos. La caché del diccionario de datos también se llama caché del diccionario o caché de filas.
Database buffer cache - Caché de Buffers de Base de Datos. En este espacio de memoria se almacena copias de bloques de datos que se han recuperado de archivos de datos lo que permite grandes mejoras de rendimiento al obtener y actualizar datos, esto lo realiza gestionado un algoritmo LRU, el tamaño del bloque primario está determinado por DB_BLOCK_SIZE
Estructura física Database buffer cache - Caché de Buffers de Base de Datos.-
En este espacio de memoria se almacena copias de bloques de datos que se han recuperado de archivos de datos lo que permite grandes mejoras de rendimiento al obtener y actualizar datos, esto lo realiza gestionado un algoritmo LRU, el tamaño del bloque primario está determinado por DB_BLOCK_SIZE.
Asesor de Caché de Buffers La función Asesor de Caché de Buffers activa y desactiva la recopilación
de estadísticas para predecir el comportamiento de los distintos tamaños de caché. La información proporcionada por estas estadísticas le puede ayudar a establecer el tamaño óptimo de la caché de buffers de base de datos para cada carga de trabajo determinada. La información del Asesor de Caché de Buffers se recopila y se muestra mediante la vista V$DB_CACHE_ADVICE.
Estructura física Redo log buffer - Buffer de Redo Log.- En este espacio se registra todos
los cambios realizados en los bloques de datos de la base de datos, su finalidad principal es la recuperación, los cambios registrados dentro de éste se llaman registros de redo, los registros de redo contienen información que permite reconstruir o rehacer cambios, el tamaño está definido por LOG_BUFFER. Los registros de redo contienen la información necesaria para recrear los datos que había antes de los cambios realizados por las operaciones INSERT, UPDATE, DELETE, CREATE, ALTERo DROP.
Estructura física Large pool - Conjunto Grande Es un área opcional de memoria en el SGA
que permite liberar al conjunto compartido de su carga, se utiliza para: – Memoria de sesión (UGA) para el servidor compartido – Procesos de servidor de E/S – Operaciones de copia de seguridad y recuperación o RMAN – Buffers de mensajes de ejecución en paralelo: PARALLEL_
AUTOMATIC_TUNING se define como TRUE
Copia de Seguridad y Recuperación. - RMAN (Oracle Recovery Manager) utiliza el conjunto grande cuando se definen los parámetros BACKUP_DISK_IO=n y BACKUP_TAPE_IO_SLAVE= TRUE. Si se ha configurado el conjunto grande, pero no tiene el tamaño suficiente, fallará la asignación de la memoria del conjunto grande. RMAN escribe un mensaje de error en el archivo log de alertas y no utiliza esclavos de E/S para copias de seguridad o restauración.
Estructura física
Área Global de Programas Esta memoria está reservada para cada proceso de usuario que se conecte a una base de datos Oracle, se asigna cuando se crea un proceso y se libera cuando se termina un proceso, sólo la utiliza un proceso.
Estructura físicaContenido del PGA El contenido de la memoria PGA varía en función de si la instancia se ejecuta
en una configuración de servidor dedicado o de servidor compartido. Por regla general, la memoria PGA incluye los siguientes componentes: - Área SQL privada: Contiene datos, como información ligada y estructuras de memoria de tiempo de ejecución. Cada sesión que emite una sentencia SQL tiene un área SQL privada. Cada usuario que ejecuta la misma sentencia SQL tiene su propia área SQL privada que utiliza una única área de SQL compartido. - Memoria de Sesión: Consta de memoria asignada para retener las variables de una sesión y otra información relacionada con la sesión. En un entorno de servidor compartido, la memoria de sesión es compartida y no privada.- Áreas de Trabajo SQL: Utilizadas en operaciones con uso intensivo de la memoria como: Ordenación, Unión de Comprobación Aleatoria, Fusión de Bitmaps y Creación de Bitmaps.
Estructura física Diferencias en la Asignación de Memoria entre Servidores
Dedicados y Servidores Compartidos El contenido de la memoria PGA varía en función de si la instancia se ejecuta en una configuración de servidor dedicado o de servidor compartido. Por regla general, la memoria PGA incluye los siguientes componentes:
Estructura físicaEstructura de Procesos : Oracle se beneficia de varios tipos de procesos: Procesos de usuario: Se inician cuando un usuario de base
de datos solicita una conexión a Oracle Server Procesos de servidor: Se conectan a la instancia Oracle y
se inician cuando un usuario establece una sesión. Procesos en segundo plano: Se inician al iniciar una
instancia Oracle
Estructura físicaProcesos de Usuario
Programa que solicita interacción con Oracle Server, donde se debe establecer primero una conexión y que no interactúa directamente con Oracle Server.
Estructura física
Procesos de Servidor Son Programas que interactúan directamente con Oracle Server, que cumplen las llamadas generadas y devuelven resultados, que pueden ser un servidor dedicado o compartido.
Estructura físicaProcesos en Segundo Plano.
Mantienen y fuerzan las relaciones entre las estructuras físicas y de memoria:
Procesos en segundo plano obligatorios: DBWn PMON CKPT LGWR SMON La arquitectura Oracle tiene cinco procesos en segundo plano
obligatorios, que se analizan en esta lección. Además de la lista obligatoria, Oracle tiene muchos procesos en segundo plano opcionales que se inician cuando se utiliza su opción.
Estructura físicaDBWn (Escritor de Base de Datos) DBWn escribe así:
Se produce un punto de control Los buffers sucios alcanzan el umbral No hay ningún buffer libre Se produce un timeout Se realiza un solicitud de sondeo RAC Tablespace OFFLINE Tablespace READ ONLY Tabla DROP o TRUNCATE Tablespace BEGIN BACKUP
Estructura físicaLGWR (Escritura de Logs) LGWR escribe:
En la validación Si se llena a un tercio de su capacidad Si hay 1 MB de redo Cada tres segundos Antes de que escriba DBWn LGWR realiza escrituras secuenciales
desde el buffer de redo log al archivo redo log .
LGWR también puede llamar al proceso DBWn para escribir en los archivos de datos.
Estructura físicaSMON (Monitor del Sistema) Responsabilidades:
Recuperación de instancias Aplica los cambios pendientes en los archivos redo log online. Abre la base de datos para que acceda el usuario. Deshace las transacciones no validadas. Fusiona el espacio libre Libera los segmentos temporales
Estructura físicaSMON (Monitor del Sistema) Responsabilidades:
Recuperación de instancias Aplica los cambios pendientes en los archivos redo log online. Abre la base de datos para que acceda el usuario. Deshace las transacciones no validadas. Fusiona el espacio libre Libera los segmentos temporales
Estructura físicaPMON (Monitor de Procesos) Hace una limpieza cuando los procesos han fallado:
Haciendo un rollback en las transacciones Liberando los bloqueos Liberando otros recursos Reiniciando distribuidores interrumpidos
El proceso en segundo plano PMON realiza una limpieza después de los procesos fallidos de la siguiente forma: Realizando rollback en la transacción actual del usuario Liberando todos los bloqueos de tablas o filas actuales Liberando otros recursos que están reservados en ese momento por el
usuario Reiniciando distribuidores interrumpidos
Estructura físicaCKPT (Punto de Control) Responsable de:
Señalar a DBWn en los puntos de control Actualizar las cabeceras de archivos de datos con información del punto de
control Actualizar los archivos de control con información del punto de control El objetivo de un punto de control es garantizar que todos los buffers de la caché de
buffers de base de datos que se han modificado antes de un punto en el tiempo se hayan escrito en los archivos de datos.
Los puntos de control se inician por los siguientes motivos: Para garantizar que los bloques de datos modificados en la memoria se escriben en
el disco con frecuencia, de forma que no se pierdan en caso de que se produzca el fallo de un sistema o de una base de datos.
Para reducir el tiempo necesario de recuperación de una instancia. Para la recuperación, sólo es necesario procesar las entradas del archivo redo log online posteriores al último punto de control.
Para garantizar que todos los datos validados se han escrito en los archivos de datos durante el cierre.
Estructura LógicaEstablece el modo de uso del espacio físico de una base de datos respetando la Jerarquía formada por tablespaces, segmentos, extensiones y bloques .
Existe la siguiente jerarquía de estructuras lógicas: Una base de datos Oracle contiene como mínimo un tablespace. Un tablespace contiene uno o más segmentos. Cada segmento está formado por extensiones. Una extensión está formada por bloques lógicos. Un bloque es la unidad más pequeña para las operaciones de lectura y escritura.
La arquitectura de la base de datos Oracle incluye las estructuras físicas y lógicas que conforman la base de datos.
La estructura física incluye archivos de control, archivos redo log online y archivos de datos que conforman la base de datos.
La estructura lógica incluye tablespaces, segmentos, extensiones y bloques de datos.
URL: