Está en la página 1de 6

Tunning

El objetivo de Tunning es la optimizacin tanto de las sentencias SQL como de mejoras


en la configuracin del servidor de Bases de Datos, desde el punto de vista del tiempo
de ejecucin y consumo de recursos.
Cuando desarrollamos consultas SQL o procedimientos (conjunto de sentencias SQL
ejecutadas todas juntas como un bloque, tambin se lo llama script) suele suceder que
podemos llegar al mismo resultado de varias maneras distintas. Esto significa nuestras
consultas SQL pueden estar no muy bien programadas pero s cumplen con el objetivo
que

queremos

alcanzar.

Si

trabajamos

con

tablas

que

no

contienen demasiados registros, probablemente jams nos demos cuenta que nuestra
consulta SQL no fue desarrollada de la mejor forma porque los tiempos de respuesta
son aceptables. Pero cuando la Base de Datos comienza a crecer, suele suceder que
muchos procesos o reportes del sistema se vuelven extremadamente lentos. Esto
significa que algunos de los programas SQL que hemos escrito no estaban preparados
para trabajar con grandes volmenes de datos. Tambin puede pasar que el problema
no es nicamente de la forma en que desarrollamos una consulta, sino tambin que
estn mal pensados algunos ndices de las tablas u otros temas de configuracin.
4.1 Introduccin a ajuste y optimizacin de la base de datos
Existen tres pasos en el ajuste de SQL:
Identificar las sentencias SQL que son las responsables de la carga de la aplicacin y
consumo de recursos del sistema, buscando en la historia de las ejecuciones pasadas
de SQL en el sistema( con el informe de ADDM o la pgina de Top SQL en Enterprise
Manager, o las estadsticas en V$SQL).
Analizar el SQL para verificar que la ejecucin de los planes producidos por el
optimizador de consultas ejecuta razonablemente bien.
Realizar acciones correctivas para generar el mejor plan de ejecucin para la mejora de
rendimiento de las sentencias.

Estos pasos se deben aplicar hasta que el rendimiento del sistema mejora o hasta que
no hay ms sentencias que ajustar.
Identificar el SQL Cargado
Este es el primer paso en el proceso de ajuste. Las sentencias que tienen un tiempo de
respuesta bajo o bien un alto consumo de recursos como (CPU, E/S, y espacio
temporal) se consideran SQL cargado.
Con Oracle Database 11g, la tarea para identificarlo ha sido automatizada por
Automatic Database Diagnostic Monitor (ADDM). ADDM es la herramienta proactiva de
diagnsticos de rendimiento que automticamente identifica cuellos de botella dentro
de Oracle Database, incluyendo bajo rendimiento o SQL cargado, y hace
recomendaciones acerca de las opciones disponibles para fijar estos cuellos.
Otras formas para identificarlo en Oracle Database 11g es con la pgina de Top SQL en
Enterprise Manager (EM) que contiene informacin de los SQL que ms recursos
consumen en el sistema. Hay informacin para dos tipos de SQL:
Spot SQL: SQL actual para el cursor cach y sesiones activas
Period SQL: SQL histrico almacenado en Automatic Workload Repository (AWR)
based en el perodo de retencin especificado
Se

puede

obtener

informacin

V$ACTIVE_SESSION_HISTORY y

de
en

SQL
vistas

cargado
de

en

repositorio

V$SQL_AREA
de

carga

como

DBA_HIST_ACTIVE_SESS_HISTORY y DBA_HIST_SQL_PLAN.
4.1.1 Concepto
El tuning de base de datos en resumen es configurar los elementos del servicio de
base de datos para que su uso sea ptimo en velocidad y en uso de memoria. Una
base de datos sin tuning puede ser lenta o consumir la memoria del equipo
innecesariamente.
Los procesos de tuning dependen de la base de datos que ests usando, puede ser
Oracle, MySql, Progress, etc. Cada una de ellas proporciona herramientas especficas

para ver los parmetros que est usando una base de datos y modificarlos si es
preciso.
Es una adecuacin de procesos que se mantienen en memoria para dar acceso a esa
base de datos. Una base de datos, para estar servida en red requiere que se corra un
proceso de servicio y algunos procesos adicionales, estos procesos se encargar de dar
respuesta a las peticiones de los usuarios que se conectan a la base de datos, de
escribir y leer registros resolviendo interbloqueos, multilecturas y fallos en la conexin.
Por ejemplo si falla la luz al estar escribiendo un registro, los procesos de la base de
datos recuperan el registro incompleto tal y como estaba antes de la falla, para eso se
controlan lugares intermedios de escritura antes de escribir el registro solicitado, todos
estos ejemplos se realizan en automtico sin que el programador tenga que hacer algo.
4.1.2 aplicacin
Para los desarrolladores de aplicaciones y administradores de base de datos, el ajuste
de las aplicaciones es un rea de esencial importancia y se invierte una considerable
cantidad de tiempo en el desarrollo de esta funcin tan relevante. Una aplicacin
comercial escasamente adaptable puede afectar potencialmente no solo a algunos
usuarios, sino tambin a toda la operacin comercial, y por esta razn las empresas
invierten en una gran cantidad de recursos para asegurar la ejecucin de las
aplicaciones esenciales para sus empresas sin inconvenientes. Oracle Tuning Pack,
parte del grupo de productos de Oracle Database 11g, ofrece una solucin
extremadamente econmica y fcil de usar que automatiza todo el proceso de ajuste
de las aplicaciones. Las mejoras en el desempeo de SQL se logran a travs de los
Asesores SQL, las cuales se integran sin defectos con Enterprise Manager Database
Control y Grid Control, y juntas brindan una solucin completa para la automatizacin
de la compleja y prolongada tarea de ajuste de las aplicaciones.
4.2 Diagnostico general de la base de datos.
El objetivo de esta actividad es registrar, analizar y brindar recomendaciones de
acuerdo a la actividad real que soporta el servidor de bases de datos, principalmente
en lo que refiere a la administracin de ndices. Este trabajo supone un diagnstico que

proponga una mejora apreciable en los tiempos de respuesta y acceso a las bases de
datos.

Conocer el rendimiento de las bases de datos Oracle por el lado de su funcionamiento


y su manera de resolver los conflictos, nos puede llevar a obtener respuestas a ciertas
preguntas comunes, como ser: Por qu el sistema est lento? o, por qu esta
consulta tarda tanto?
Evaluacin de la configuracin de parmetros de ejecucin con los que cuenta el
servidor: administracin de la memoria disponible para el equipo por parte del
manejador, lmites de conexiones simultneas, protocolos de conectividad aceptados.
Anlisis del esquema de respaldo y recuperacin de la informacin que reside en cada
una de las bases de datos del servidor, as como su impacto en el normal
funcionamiento del mismo.

4.4 Tuning
Tuning de base de datos
En base al diagnstico realizado anteriormente, se propone realizar un conjunto de
actividades para la mejora de la ejecucin del manejador de base de datos. Re
indexacin o Desfragmentacin de todos los ndices de la base de datos.

Anlisis pormenorizado de las sentencias que insumen ms tiempo de ejecucin de


modo de identificar la posibilidad de creacin de ndices que contribuyan al mejor
desempeo de las mismas.
Redefinicin de la estrategia de respaldo as como tambin configuracin de todos los
planes de mantenimiento necesarios para un correcto mantenimiento preventivo de las
diferentes bases de datos que residen en el servidor.
Realizar un anlisis de posibles configuraciones de hardware (discos) como para lograr
una redistribucin de los mismos.
4.5 Parametrizacin Avanzada
Por lo general, cualquier accin ejecutada sobre la base de datos, resultar en alguna
actividad de acceso de E/S. Este tipo de acceso puede ser lgico (en memoria) fsico
(a disco). Es muy importante formarse una perspectiva de rendimiento al momento de
querer mejorar estos tipos de accesos.
En este captulo veremos la importancia del ajuste de rendimientos, orientado al
servidor y a los accesos de E/S. Las mediciones que se puedan realizar en este mbito
tambin recaern en la consulta de vistas dinmicas de rendimiento (V$) y en vistas del
diccionario de datos (DBA), como as tambin en las salidas de los reportes de
STATSPACK.

BIBLIOGRAFIA
https://espanol.answers.yahoo.com/question/index?qid=20070212073424AA4G5fD

http://blog.educacionit.com/2011/12/15/tunning-en-bases-de-datos-oracle-y-sql-server/
http://www.todoexpertos.com/categorias/tecnologia-e-internet/bases-dedatos/oracle/respuestas/850363/tuning
http://www.oracle.com/technetwork/es/documentation/317551-esa.pdf
http://octagono.com.do/Tunning_y_administracion_de_Bases_de_Datos.html
http://isef27.edu.ar/bajar/dbaIV/1.pdf