ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Conceptos básicos de Oracle


Enviado por   •  5 de Septiembre de 2013  •  Tesis  •  6.835 Palabras (28 Páginas)  •  303 Visitas

Página 1 de 28

TEMA 1: Conceptos básicos de Oracle

NOTA: Todas las pruebas de este estudio se harán bajo el usuario SCOTT y usando el programa

de Oracle SQL*Plus como interfaz. Éste se inicia tecleando en una ventana MS-DOS:

sqlplusw.exe. Previamente se habrá concedido a este usuario los roles SELECT_CATALOG_ROLE y

PLUSTRACE para que pueda ver el diccionario de datos como usuario DBA mediante el comando:

GRANT select_catalog_role,plustrace TO SCOTT;

Introducción a la arquitectura de Oracle.-

Una primera y sencilla aproximación a la arquitectura general utilizada por el RDBMS ORACLE para el manejo

de base de datos (independientemente de la configuración single, multi-thread, parallel- utilizada) es la

mostrada en la siguiente figura.

Esta arquitectura puede ser divida en dos porciones lógicas:

- estructura de procesos y memoria

- estructura para el manejo de los datos

Estructura de procesos y memoria.-

Independientemente de la arquitectura computacional, o de su configuración, cada base de datos dentro del

RDBMS ORACLE es asociada a una determinada instancia, y de igual forma una instancia puede abrir y utilizar

sólo una base datos ORACLE en cualquier momento de su ejecución. Es posible poseer múltiples instancias

ejecutándose concurrentemente dentro de una misma máquina, cada una accediendo su propio espacio físico de

datos (su base de datos ORACLE). En el sistema de operación, la variable de entorno ORACLE_SID permite

identificar el nombre de la instancia ORACLE a la cual se conectarán, por defecto, las aplicaciones de usuario.

Cada vez que el RDBMS ORACLE es inicializado, tanto el System Global Area (SGA) como los procesos

demonios son levantados. El SGA junto con los procesos demonios es lo que se demonina como una instancia

ORACLE.

La memoria en Oracle.-

El System Global Area es un conjunto de estructuras de memoria compartida que contienen datos e

información de control para una determinada instancia ORACLE. El SGA se mantiene en la memoria virtual del

computador en el que reside la instancia ORACLE. Si dentro de la instancia existe la posibilidad de que más de un

usuario se encuentren conectados simultáneamente, los datos dentro del SGA de la instancia son compartidos

entre todos los usuarios. Es por esto que algunas veces al SGA también se le suele denominar Shared Global

Area. La estructura interna de la SGA de un RDBMS shared server puede observarse en esta figura:

Veamos que es lo que hace cada componente:

Buffer Cache (o Database Buffer Cache) : Su función es mantener bloques de datos leídos directamente

de los archivos de datos. Cuando se procesa una consulta, el servidor busca los bloques de datos requeridos

en esta estructura. Si el bloque no se encuentra en esta estructura, el proceso servidor lee el bloque de la

memoria secundaria y coloca una copia en esta estructura. De esta forma, otras peticiones que requieran de

este bloque de datos no requerirán de acceso a memoria secundaria (lecturas físicas).

El Buffer Cache está organizado en dos listas: la lista de bloques sucios (dirty buffers) y la lista de los más

recientemente usados (= L.R.U. last recent used ). La lista de sucios almacena los bloques sucios, que

contienen datos que han sido modificados pero que no han sido escrito todavía a disco. La lista LRU mantiene

los buffers libres (no modificados y disponibles), los reservados (pinned buffers) que son lo que actualmente

son accedidos y los bloques sucios que todavía no han sido escritos a disco. El número de bloques manejados

por el Buffer Cache puede ser configurado para mejorar el rendimiento, así como el tamaño del bloque de

datos. En cualquier caso el tamaño de bloque de datos utilizado debe ser el mismo que el que se ha

configurado para la instancia como tamaño de bloque de datos utilizado por el RDBMS. No obstante se

pueden crear cachés adicionales con tamaños de bloque diferentes (2Kb, 4K, 8Kb, 16Kb ó 32Kb) para que

sean usados con tablespaces con un tamaño de bloque diferente. Los parámetros para estas subcachés son

del tipo DB_nK_CACHE_SIZE, siendo n uno de los cinco valores indicados antes.

Redo Log Buffer: Es un buffer circular que mantiene todos los cambios que han sido realizados sobre la

base de datos por operaciones INSERT, UPDATE, DELETE, CREATE, ALTER y DROP. Las entradas de este

buffer contienen toda la información necesaria para reconstruir los cambios realizados a la base de datos por

medio de calquier sentencia del DDL o del DML (el bloque que ha sido cambiado, la posición de cambio y el

nuevo valor). El uso del Redo Buffer es estrictamente secuencial, en tal sentido pueden entrelazarse cambios

en los bloques de datos producidos por transacciones diferentes. El tamaño de este Buffer también puede ser

configurado para mejorar el rendimiento de la instancia y de las aplicaciones que sobre ellas se ejecutan.

Shared Pool: Esta estructura se utiliza durante el procesamiento de comandos. Su tamaño también es

...

Descargar como (para miembros actualizados)  txt (45.5 Kb)  
Leer 27 páginas más »
Disponible sólo en Clubensayos.com