Upload
utnvirtualcuicyt
View
408
Download
0
Embed Size (px)
DESCRIPTION
Gestion de Redimiento
Citation preview
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 1/35
CAPITULO VIII
Gestión de rendimiento
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 2/35
Gestión de rendimiento
Una de las tares principales del DBA es elmonitoreo de rendimiento y afinamiento de labase de datos. Sin embargo, la gestión de
rendimiento de la mayoría de lasorganizaciones es reactiva.El DBA suele estarmuy ocupado en su
rutina y por esto notiene tiempo dehacer tareaspreventivas.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 3/35
Definición de rendimiento
En una organización, el manejo de losproblemas de rendimiento es algo quecompete a toda la empresa.
Los problemas de rendimiento pueden sercausados por cualquier componente de lasTIC: servidores, red, SO, clientes o base de
datos.Poseer una sólida comprensión de lainfraestructura de TI permite a los DBA’s responder eficazmente cuando surgen
problemas de rendimiento.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 4/35
Definición de rendimiento
Rendimiento es la celeridad con la que laDBMS atiende la demanda de los usuarios.
Cinco factores que influyen en el rendimiento
de base de datos:Carga de trabajo.
Capacidad del computador
Recursos adicionales de hardware y software.
Optimización yContención.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 5/35
Definición de rendimiento
Carga de trabajo es una combinación detransacciones en línea, tareas en batch, consultasad hoc, tareas de análisis de datos y comandos
del sistema ejecutados en un tiempo dado. La carga de trabajo puede variar drásticamentede un día para otro, una hora a otra, e inclusominuto a minuto. A veces la carga de trabajo es
predecible y en ocasiones es muy impredecible.Ejemplo de carga de trabajo predecible: a fin demes.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 6/35
Definición de rendimiento
Capacidad del computador para procesardatos está dada por la velocidad de entrada-salida, velocidad del CPU, la capacidad de
trabajo en paralelo, la eficiencia del sistemaoperativo y del DBMS.
Los recursos adicionales de hardware y
software que ayudan al rendimiento delsistema son gestor de transacciones, gestorde colas, dispositivos de caché, sistemasRAID de almacenamiento, etc.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 7/35
Definición de rendimiento
Optimización es la capacidad que tienen lasbases de datos relacionales de optimizar lasconsultas internamente para hacer mas eficienteel camino de acceso a los datos. Pero hacer mas
eficientes las consultas también depende de otrosfactores como se verá mas adelante.
La contención es la condición en la que dos omas componentes de la carga de trabajo intentanutilizar un mismo recurso de una manera
conflictiva. Ejemplo, dos transacciones quierenactualizar el mismo dato al mismo tiempo.Mientras la contención aumenta, la capacidad deprocesar datos disminuye.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 8/35
Definición de rendimiento
El rendimiento de base de datos se puededefinir como la optimización del uso derecursos para incrementar la capacidad de
procesamiento y disminuir la contención,permitiendo que sea procesada la mayorcarga de trabajo.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 9/35
Hoja de Ruta para alcanzarun buen rendimiento de una
Base de Datos
Se diseña un plan de gestión de rendimiento, queincluye herramientas de monitoreo y afinamiento.
Identificar la áreas más problemáticas.
Del 75% al 80% de todos los problemas derendimiento de una base de datos son causadas por
código pobre SQL o por lógica de la aplicación.Aunque un sistema esté en un inicio muy eficiente,puede degradarse por varias razones como:crecimiento de la BD, usuarios adicionales, cambios
en el negocio, etc.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 10/35
o a e u a para a canzar unbuen rendimiento de una Base
de DatosUn código SQL pobremente ejecutado puedecausar los siguientes problemas que afectanal rendimiento:
Búsquedas secuenciales en las tablas. La falta de índices adecuados.
Creación de índices inapropiados.
No utilizar los índices disponibles. Estadísticas de base de datos no actualizadas.
Junturas de tablas en un orden no óptimo.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 11/35
o a e u a para a canzar unbuen rendimiento de una Base
de Datos Mas problemas causados por un pobre códigoSQL:
Búsquedas secuenciales en las tablas.
Junturas en las aplicaciones en vez de junturasen SQL.
Métodos de junturas no eficientes.
Código SQL eficiente dentro de código de
aplicaciones ineficiente (bucles).
Formulación de subconsultas ineficientes (exists)
Ordenamientos innecesarios (group by, union)
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 12/35
La regla del 80/20
El 80% de los resultados provienen del 20%del esfuerzo.
Es decir, que una pequeña cantidad de
esfuerzo trae la mayoría de las recompensas.
CENTRARSE EN LAS CAUSAS MAS
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 13/35
CENTRARSE EN LAS CAUSAS MASPROBABLES DE POBRERENDIMIENTO
Desde la perspectiva de la optimización del
rendimiento de bases de datos, el DBA seconcentrará en primer lugar en las causas más
probables de los problemas de rendimiento,como es el código SQL.
Encontrar el código que produce los problemases muy difícil ya que éste puede estar
escondido en uno de los cientos o inclusomiles de programas, en alguna aplicación o enuna consulta de AdHoc.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 14/35
Herramientas de monitoreo
Para detectar en dónde están los problemas sedeben utilizar herramientas de monitoreo quevienen con las DBMS, también se pueden adquirir
herramientas de empresas independientes.
Normalmente, en estas herramientas se calificana las instrucciones SQL, en base a la cantidad de
recursos que consumen, identifican a losprogramas y usuarios que las ejecutan.
La correcta codificación y puesta a punto desentencias SQL requiere de un gran esfuerzo.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 15/35
Otros factores que afectan alrendimiento
Otros factores que afectan al rendimiento son: La asignación de memoria (buffer / caché para
datos, SQL, autorización).
Opciones de registro de logs (caché, el tamañodel registro, segmentos de rollback en Oracle).
Eficiencia de E/S (separación de las tablas eíndices en el disco, el tamaño de la base dedatos, archivos fragmentados y extendidos).
La carga de trabajo de la aplicación y de la basede datos en el servidor.
Definiciones de esquemas de bases de datos.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 16/35
Monitoreo vs. Gestión
Por desgracia, el DBA suele atacar eldesempeño de una manera reactiva.
Al reescribir el código de una aplicación es
proactivo si se lo hace antes de que estéterminada.
Algunas herramientas controladas por eventos
se pueden utilizar para hacer más fácil elajuste del rendimiento de forma automática,tomando acciones predefinidas cuando seactivan las alertas preestablecidas.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 17/35
Monitoreo vs. Gestión
Gestión = Monitoreo + Plan de resolución deproblemas
Plan de resolución de problemas Análisis + Optimización.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 18/35
Monitoreo vs. Gestión
Monitoreo es el primer componente de la gestión derendimiento. Consiste en recorrer el ambiente de BD,revisando los reportes de rendimiento con las herramientasdisponibles, y observando cómo corre el sistema. Monitoreoes el proceso de identificar problemas.
Análisis es el segundo componente de la gestión derendimiento. El monitoreo puede generar cientos o miles demensajes, pero no puede tomar decisiones en base a lainformación recolectada, esto requiere del análisis de untécnico especializado como el DBA.
Optimización es la acción correctiva, es el tercer
componente de la gestión de rendimiento. Algunasherramientas de rendimiento realizan correcciones de formaautomática, sin embargo, la optimización casi siemprerequiere de la experiencia del DBA para encontrar lasmejores soluciones.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 19/35
Monitoreo vs. Gestión
Una buena gestión del rendimiento sólo sepuede lograr mediante un plan proactivo en elque se identifican potenciales problemas y se
establecen sus soluciones antes de queocurran.
El DBA debe asegurar el rendimiento desde eldiseño de una aplicación.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 20/35
Gestión Reactiva frente aproactiva
La gestión proactiva del rendimiento combinaprevención, planificación y automatización paraminimizar el monitoreo y afinamiento reactivo.Reduce el esfuerzo, tiempo y errores humanos en
la implementación y mantenimiento de lossistemas de bases de datos.
La gestión reactiva el rendimiento, siempre seránecesario porque siempre habrán problemas queocurrirán y no fue planificada su solución. La
gestión reactiva del rendimiento no es mala deltodo, pero es manual y consume mucho tiempo.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 21/35
Estimación de Rendimiento en laPreproducción
Se debe pensar en el rendimiento desde lasprimeras fases de desarrollo, mientras mástemprano se identifiquen los problemas,
resulta menos costoso repararlos.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 22/35
Preproducción Estimación derendimiento
El costo de los problemas de rendimientodurante todo el ciclo de vida de desarrollo.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 23/35
Preproducción Estimación derendimiento
La estimación del rendimiento de unaaplicación no solo comprende el análisis delcódigo SQL. La aplicación debe ser revisada
totalmente y no solo una parte con el fin deaumentar el rendimiento. El análisis debemostrar el efecto global de las consultas ycomo afectan unas a otras.
Crear un método de rendimiento seguro esiterativo y se debe cooperar entre DBA, SA, ydesarrolladores.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 24/35
Tendencia histórica
La evolución histórica y tendencias de losrecursos permite a los administradores debases predecir la necesidad de
actualizaciones de hardware en semanas, ytal vez meses, por adelantado.
Esto proporciona una valiosa informaciónhistórica que puede ser reportada y analizada.
El mantenimiento de los indicadores clave delrendimiento histórico puede proporcionar ungran beneficio para los DBAs.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 25/35
Gestión de Nivel de Servicio
Gestión de nivel de servicio (SLM) es la"metodología disciplinada, dinámica yprocedimientos utilizados para garantizar que
los niveles adecuados de servicio seentreguen a todos los usuarios de TI deacuerdo con las prioridades del negocio y a uncosto aceptable".
MST asegura que los recursos se aplican a lassolicitudes en función de su importancia parala organización.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 26/35
Gestión de Nivel de Servicio
El SLM enfoca disponibilidad y rendimiento.
Eje: 99,95% 09 a.m.-10:00 PM (“tiempo derespuesta promedio es de dos segundos o
menos para cargas de trabajo de 500 o masusuarios.")
Por un acuerdo de nivel de servicio (SLA) para
tener éxito, todas las partes implicadas debenestar de acuerdo a los objetivos establecidospara la disponibilidad y el rendimiento.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 27/35
Gestión de Nivel de Servicio
En una estructura IT típica es difícil asignarresponsabilidades. El grupo desarrollador deaplicaciones trabaja independientemente del
DBA y del SA para la aplicaciónEl SLM hace predecible el rendimiento de unaaplicación.
Sin un SLA, los usuarios y el DBA tendrándiferentes expectativas, resultando ejecutivosinsatisfechos y DBAs frustrados.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 28/35
Gestión de Nivel de Servicio
Si los de IT en un entorno de fractura.
Con el SLM el DBA puede administrar susrecursos adecuadamente, invirtiendo deacuerdo a lo que la empresa necesita.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 29/35
Tipos de Optimización delRendimiento
Una aplicación de base de datos puedeafinarse en tres áreas:
Ajuste del sistema.
Ajuste de base de datos.
Ajuste de las aplicaciones.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 30/35
Ajuste del sistema
El sistema que comprende el DBMS a símismo y todos los componentes relacionadosen la que se basa.
El DBMS puede y debe ser ajustado paraasegurar un rendimiento óptimo.
El software de otros sistemas con los que
interactúa el DBMS incluye: el sistemaoperativo, software de red, sistemas de colasde mensajes, middleware y procesadores detransacciones.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 31/35
Ajuste de la base de datos
El rendimiento puede verse afectado por el diseñofísico de la base de datos, incluyendo lanormalización, almacenamiento en disco, el
número de tablas, diseño de índices, y el uso deDDL y sus parámetros asociados.
La ubicación física de los archivos de base dedatos en sistemas de disco afecta al rendimiento
de las aplicaciones de acceso a los datos.
Los archivos de datos crecen y degradan elrendimiento.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 32/35
Ajuste de la base de datos
LA revisión de los índices es necesario paraevitar impactos negativos en la modificaciónde datos.
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 33/35
Ajuste de Aplicación
El 75% de los problemas de rendimiento soncausados por códigos de aplicaciones noapropiados tanto en SQL como en lenguajes
de aplicación como: Java, COBOL, C + +, ocódigo de Visual Basic.
Aj d l h i d
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 34/35
Ajuste de las herramientas derendimiento
Muchas herramientas de terceras partes puedegestionar con eficacia el rendimiento de lasaplicaciones de base de datos de misión crítica:
Monitores de rendimiento.
Herramientas de estimación de rendimiento. Herramientas de planificación de la capacidad.
Análisis de SQL y herramientas de ajuste.
Herramientas de análisis de Asesoramiento.
Herramientas de análisis. Herramientas de Reorganización.
Herramientas de selección.
Aj t d l h i t d
5/10/2018 Gestion de Rendimiento Corregido - slidepdf.com
http://slidepdf.com/reader/full/gestion-de-rendimiento-corregido 35/35
Ajuste de las herramientas derendimiento
El DBA a menudo tendrá que utilizar estasherramientas en conjunto con otros integradosy accesibles desde una consola de
administración central.Las herramientas de terceros puedengestionar el rendimiento en ambientesheterogéneos.