jueves, 2 de abril de 2009

¿Qué es TNSNAMES?

El TNSNAMES (también llamado método LOCAL) son usados para app clientes e indican que la resolución se hace a través de otro archivo de configuración llamado tnsnames.ora, residente en la misma ubicación que contiene las unidades o nombres de servicios que se han mapeado.

Es además un archivo ubicado en los clientes, contiene los nombres de servicio de red, asignados a descriptores a través de los cuales se nos permite acceder.
¿Qué es Listener?

Se usa el LISTENER.ORA para el SERVIDOR y se encuentra ubicado en el servidor de base de datos. Es el archivo de configuración del listener de la base de datos. Este archivo tendrá que estar ubicado en $ORACLE_HOME/network/admin/listener.ora. El comando para gestionar el listener es lsnrctl. Este ejecutable lo podemos encontrar en $ORACLE_HOME/bin/lsnrctl.
Arquitectura de una Base de Datos de Oracle

La arquitectura de oracle posee tres componentes escenciales:

- Las estructuras para almacenar datos y el código ejecutable
- Los procesos que corren el sistema de bases de datos y las tareas de cada usuario conectado a la base de datos.
- Los archivos que sirven para el almacenamiento físico, en disco, de la información de la base de datos.

Algunos conceptos importantes a tener en cuenta al momento de analizar la arquitectura de oracle son:

¿Qúé es un PGA?

Llamado Process Global Área, consta de datos e información de control de los procesos, asegurando el uso correcto de estos. El PGA contiene información acerca de las conexiones y los procesos que se realizan en Oracle, su tamaño es variable en longitud, pero no es dinámico. El PGA se activa al conectarse un usuario.

Algunos aspectos importantes:

• PGA constituye una región de memoria asociada a cada proceso del servidor.
• Contiene datos e información de control para cada una de las sesiones que los usuarios mantienen con el manejador Oracle a través del proceso.
• No es un área de memoria compartida.
• Una región para almacenar un PGA se solicita cuando un proceso usuario establece una sesión de trabajo con el manejador de datos.
• PGA para una configuración de servidor dedicado:
– Sort Area: se utiliza para los ordenamientos de filas antes de que las filas sean devueltas al
usuario.
– Stack Space: contiene las variables de sesión de usuario y sus valores
– Cursor State: almacena el estado de los diferentes cursores que están siendo utilizados en
la sesión del usuario.

¿Qué es SGA?

SGA (System Global Area) se podría definir como una serie de buffers en memoria residente, a través de la cual todas las transacciones y el almacenamiento de dato fluyen. El SGA es localizado en la memoria al iniciarse una instancia y desaparece al bajarla. Su tamaño no puede ser cambiado, pero si puede ser visto con el comando "SHOW SGA" en el SQL*DBA. Su longitud esta definida por lo parametros del archivo de iniciación INIT.ORA.

Esta Compuesto por:
- Diccionario Cache
- Los Redo Log Buffers
- El Database Buffer Caché

¿Qué es Database Buffer Caché?

Es un espacio reservado en memoria para las operaciones normales de la base de datos, el cual depende del tamaño especificado en el archivo de inicialización (INIT.ORA).

Mantiene los 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 no se encuentra, el proceso servidor lee el bloque de la memoria secundaria y coloca una copia. El número de bloques puede ser configurado, así como el tamaño del bloque de datos.

¿Qué es Redo Log Buffer?

Es un espacio reservado en memoria que contiene los cambios realizados a los bloques de datos, permitiendo la reconstrucción de la base de datos en caso de ocurrir un accidente.

¿Qué es el Proceso DBWriter (DBWR)?

Es el encargado de copiar los bloques de datos desde el buffer cache a la memoria secundaria. Cuando una transacción cambia los datos de un bloque de datos, no es necesario que este bloque se escriba inmediatamente en el disco. El DBWR escribe únicamente cuando se necesitan nuevos bloques en el Database Buffer Cache. Los datos se escriben usando una política de LRU (Menos Usado Recientemente).

¿Qué es LogWriter (LGWR)?

Se encarga de escribir las entradas desde el Log Buffer a disco. La escritura de bloques del Redo Log Buffer a disco ocurre secuencialmente y bajo las siguientes reglas:
– Cuando el Redo Log está lleno en un 33% o más.
– Cuando oucrre un time-out (cada tres segundos).
– Antes de que el DBWR escriba algún bloque modificado a disco.
– Cuando una transacción se compromete.