El SGA (System Global Area) en Oracle 19c es una parte crucial de la arquitectura de la base de datos, ya que almacena datos y estructuras que son compartidos por todos los procesos de la instancia de la base de datos.
Aquí hay algunas pautas y consideraciones generales sobre el SGA en Oracle 19c:

Tamaño del SGA:
El tamaño del SGA debe ser adecuado para la carga de trabajo de la base de datos. Un tamaño demasiado pequeño puede llevar a un rendimiento bajo, mientras que un tamaño excesivo puede desperdiciar memoria.
Calcular el tamaño del SGA (System Global Area) en Oracle implica entender la carga de trabajo de la base de datos y los componentes del SGA. A continuación se describen los pasos involucrados en el cálculo:
Fórmula General para el Cálculo Completo del SGA
Un cálculo básico del SGA puede adoptar la siguiente forma:
SGA_TOTAL=DB_BUFFER_CACHE+SHARED_POOL+LARGE_POOL+JAVA_POOL+STREAMS_POOLSGA_TOTAL=DB_BUFFER_CACHE+
Ejemplo de Cálculo
Supongamos que decides establecer el SGA total en 8 GB. Podrías hacerlo así:
- Database Buffer Cache: 60% (4.8 GB)
- Shared Pool: 20% (1.6 GB)
- Large Pool: 10% (800 MB)
- Java Pool: 5% (400 MB)
- Streams Pool: 5% (400 MB)
Esto es un ejemplo y los porcentajes pueden variar según tus necesidades, así que ajusta el tamaño según las estadísticas de uso y tus requisitos de carga.
Configuración de Parámetros:
Los parámetros más relevantes para configurar el SGA incluyen:
SGA_TARGET: Tamaño objetivo del SGA, que permite la administración automática de memoria.SGA_MAX_SIZE: Tamaño máximo del SGA que se puede configurar.- SGA Automático: Se puede usar la administración automática de memoria (
MEMORY_TARGETyMEMORY_MAX_TARGET) para que Oracle ajuste el SGA y el PGA automáticamente, aunque puede tener consecuencias.
Establecer SGA_TARGET
ALTER SYSTEM SET SGA_TARGET = tamaño SCOPE=SPFILE;
Establecer SGA_MAX_SIZE
ALTER SYSTEM SET SGA_MAX_SIZE = tamaño SCOPE=SPFILE;
Si usas MEMORY_TARGET
ALTER SYSTEM SET MEMORY_TARGET = tamaño SCOPE=SPFILE;
Es importante que cualquier cambio en los parámetros
SGA_TARGETySGA_MAX_SIZEque se realice conSCOPE=SPFILErequerirá un reinicio de la base de datos.
Si decides no usar la gestión automática de memoria, puedes especificar los tamaños de los componentes individuales con los siguientes parámetros:
Establecer tamaño del shared pool a 512 MB
ALTER SYSTEM SET SHARED_POOL_SIZE = tamaño SCOPE=BOTH;
Establecer tamaño del buffer cache
ALTER SYSTEM SET DB_CACHE_SIZE = tamaño SCOPE=BOTH;
Configurar tamaño del Large Pool a 256 MB
ALTER SYSTEM SET JAVA_POOL_SIZE = tamaño SCOPE=BOTH;
Configurar tamanho del Java Pool a 128 MB
ALTER SYSTEM SET LARGE_POOL_SIZE = tamaño SCOPE=BOTH;
Verificación de la Configuración Actual
Para verificar la configuración actual de la SGA, puedes usar la siguiente consulta:
SELECT * FROM V$SGA;
Y para ver detalles sobre los componentes de la SGA:
SELECT * FROM V$SGA_DYNAMIC_COMPONENTS;
Monitoreo
Es posible monitorear el uso del SGA con vistas como V$SGA_TARGET_ADVICE, V$SGA, y V$SGA_DYNAMIC_COMMIT.
La vista V$SGA_TARGET_ADVICE proporciona recomendaciones sobre cómo ajustar el tamaño de la SGA y sus componentes. Ofrece información sobre cómo los diferentes tamaños de SGA afectarían el rendimiento.
SELECT * FROM V$SGA_TARGET_ADVICE;
La vista V$SGA proporciona información general sobre la SGA y su estructura, incluyendo su tamaño total y componentes principales.
SELECT * FROM V$SGA;
La vista V$SGA_DYNAMIC_COMPONENTS muestra información sobre los componentes de la SGA que pueden ser ajustados de manera dinámica. Es útil para revisar el uso actual de la memoria en los componentes.
SELECT NAME, VALUE, TARGET_SIZE FROM V$SGA_DYNAMIC_COMPONENTS;
SELECT * FROM V$SGA_DYNAMIC_COMPONENTS;
Esto te dará información sobre el uso del shared pool y te ayuda a identificar problemas si existe un alto número de misses.
SELECT NAME, BYTES/1024/1024 AS SIZE_MB,GETS, GETMISS FROM V$LIBRARYCACHE;
Ajuste de Rendimiento:
Siempre identifica l os cuellos de botella en el rendimiento utilizando herramientas como AWR (Automatic Workload Repository) y ASH (Active Session History).
A través de estos reportes se pueden realizar ajustes en los tamaños de los componentes del SGA según los patrones de uso observados.
Si quieres poner a prueba tus conocimientos sobre el tema resuelve el siguiente cuestionario:






Deja un comentario