09/08/2018

Tunning

I. DETALLE DEL SERVICIO

Como parte de la operación de un motor de bases de datos, es necesario llevar a cabo tareas de análisis y mantenimiento rutinarias para garantizar el buen desempeño de las bases de datos. Diagnosticar y resolver estos problemas resulta trabajoso, además de requerir tiempo considerable de los analistas y administradores de sistemas. Es por ello que no es poco común que un servidor de bases de datos presente una serie de situaciones que provoquen que los tiempos de respuesta se degraden, o que el servidor esté expuesto a riesgos de seguridad o pérdida de datos

El servicio propuesto tiene como objetivo llevar a cabo un análisis de situación operacional y diagnóstico para plataforma SQL Server que permita identificar los problemas actuales y potenciales en el servidor de base de datos. Así mismo, por cada problema identificado se definirá una solución o recomendación. Adicionalmente se definirán las conclusiones y recomendaciones con vistas a la operación futura de las bases de datos

El análisis contempla las siguientes tareas:

1. Recopilación de información del Servidor de Base de Datos

Contadores de desempeño.- Se activará una traza la cual permanecerá activa el tiempo necesario, considerando periodos de la operación donde se haga uso intensivo de las bases de datos, como operaciones de mantenimiento durante la noche, procesos de apertura o cierres, análisis de información, etc. Algunos de los contadores a utilizar son:

  • Memory Manager
    • Memory Grants Pending
    • Target Server Memory
    • Total Server Memory
  • Buffer Manager
    • Buffer Cache Hit Ratio
    • Free List Stalls/sec
    • Lazy Writes/sec
    • Page life expectancy
  • General Statistics:
    • User Connections
    • Processes Block
    • Active Temp Tables
  • Processor
    • %Processor Time
  • Access Methods
    • Full Scans/sec
    • Index Searches/sec
  • Locks
    • Average Wait Time
    • Number of Deadlocks/sec
    • Lock Wait Time (ms)
  • SQL Statistics
    • Batch Requests/sec (3000/second)
    • SQL Compilations/sec
    • SQL Re-Compilations/sec
  • Physical Disk
    • Disk Queue Length
    • Disk Read Queue Length
    • Disk Write Queue Length

Arquitectura del servidor de base de datos y las bases de datos existentes.- Esta información se obtendrá mediante la ejecución de consultas a las vistas dinámicas de metadatos, uso de procedimientos almacenados del sistema y funciones de metadatos, así como la revisión de información a través de las herramientas de administración de SQL Server. Estas consultas no afectan el desempeño de la instancia y abarcan los siguientes aspectos:

  • Capacidades actuales de recursos (CPU, memoria)
  • Arquitectura y capacidad de almacenamiento
  • Niveles de software (Versiones, ediciones, service pack)
  • Arquitectura física de las bases de datos de usuario y del sistema

Parámetros de operación.- Esta información también se obtendrá mediante la ejecución de consultas a las vistas dinámicas de metadatos y uso de herramientas de administración de SQL Server. Abarcan los siguientes aspectos:

  • Tamaño de las bases de datos y estructuras de almacenamiento que la componen
  • Ubicación física de los objetos
  • Identificación de eventos de autocrecimiento
  • Uso de estructuras de almacenamiento
  • Uso de índices
  • Fragmentación de índices
  • Análisis de carga transaccional
  • Análisis de actividad actual
  • Identificación de consultas costosas
  • Eventos de espera del procesador
  • Historiales de copias de seguridad

2. Análisis de la Información Recopilada.- Detección y priorización de problemas que estén afectando el desempeño del servidor de base de datos, con las acciones a tomar y recomendaciones por cada uno de ellos

3. Desarrollo Informe del diagnóstico y recomendaciones.- Preparación del documento de diagnóstico y análisis operacional y presentación del mismo a las personas interesadas de la organización

4. Implementación de las solución y recomendaciones posibles.- En base al informe de diagnóstico y recomendaciones[1]

[1] Algunos problemas requieren de cambios en la arquitectura o infraestructura (repotenciación de recursos, reconfiguración de componentes de arquitectura, reemplazo de componentes de arquitectura) y no es posible implementarlos inmediatamente

II. ENTREGABLES DEL SERVICIO

Los entregables del análisis de situación operacional son:

  1. Informe de diagnóstico de la Salud del Servidor de Base de Datos.- Informe técnico que incluye el detalle de la problemática encontrada en el motor de base de datos
  2. Hoja de ruta a seguir a corto, mediano y largo plazo.- Propuestas de solución a los problemas identificados, indicando tareas y tiempos de implementación
  3. Bolsa de horas.- En base un levantamiento de información inicial, se determinará un número de horas para implementar las soluciones.

III. PLAZO Y LUGAR DE EJECUCION

Típicamente, el tiempo de ejecución es de 1 semana. Aunque se prefiere la ejecución directamente en los las oficinas del cliente, las tareas también se pueden ejecutarse de forma remota.