Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CONCEPTOS GENERALES
El SMBD que hemos venido utilizando desde el principio ha sido el proporcionado por
Microsoft, el SQL Server 2014 Enterprise y es por eso que documentaremos primero las
herramientas de monitoreo provistas en este SMBD.
Monitorear instancias y bases de datos SQL Server provee información necesaria para
diagnosticar y resolver problemas de desempeño de SQL Server, al igual que optimizar SQL
Server. Un rendimiento óptimo no es fácil de definir y configurar, dado que usualmente existe
un intercambio entre múltiples factores de software y hardware, También depende de su
ambiente, requerimientos de negocios y políticas de la compañía.
Mientras que reportes lentos pueden ser aceptables en una pequeña fábrica, no es en grandes
empresas donde ralentizaciones, intermitencias y cuellos de botella afectan a una gran
cantidad de usuarios y pueden afectar significativamente al negocio. Los problemas listados
son usualmente inaceptables y deben ser resueltos tan pronto como sea posible.
Una vez que el rendimiento de SQL server está optimizado, tiene que ser monitoreado
constantemente, dado que cada cambio en datos, esquemas y configuración usualmente
llevan a una situación donde una optimización manual adicional es necesaria. EL ejemplo
más común es las estadísticas obsoletas – una consulta que funciona bien y entonces, sin
ninguna razón obvia, se vuelve muy lento.
Para tener una instancia SQL Server optimizada y con buen desempeño, un Administrador
de Base de Datos (Database Administrator, DBA) debe ser proactivo y monitorear el
desempeño del sistema constantemente, definir tendencias normales y definir líneas base para
métricas de desempeño específicas para SQL Server, ser notificado acerca de métricas que
están fuera del rango de valores normal, y tomar acciones adecuadas.
METRICAS:
Las métricas que deberían ser monitoreadas dependen en sus objetivos de desempeño. De
todas maneras, hay un rango de métricas comúnmente monitoreadas que proveen
información suficiente para una resolución básica de problemas. Basados en sus valores,
métricas adicionales más específicas pueden ser monitoreadas para encontrar la causa raíz
del problema.
Estas métricas de desempeño de SQL Server comúnmente monitoreadas son uso de memoria
y procesador, tráfico de red y actividad de disco.
Las métricas monitoreadas comúnmente son: tiempo de procesador, longitud de la cola del
procesador, incidentes de página por segundo, tiempo de vida de página, memoria de servidor
objetivo y total, requerimientos batch, utilización de procesador, uso de red, paginación,
conexiones de usuarios, etc.
SQL Server provee dos características integradas de monitoreo: Activity Monitor y Data
Collector.
ACTIVITY MONITOR
Activity Monitor rastrea solo las métricas de SQL Server más importantes. Para obtenerlas,
ejecuta consultas contra su instancia SQL Server anfitrión cada 10 segundos. EL desempeño
es monitoreado sólo mientras Activity Monitor está abierto, lo que lo hace una solución ligera
con casi ningún costo extra.
Las métricas son mostradas en 5 paneles colapsables: Overview, Processes, Resource Waits,
Data File I/O, y Recent Expensive Queries.
El menú contextual del panel Process provee una característica útil para un análisis más
profundo y resolución de problemas. Es el rastreo de procesos seleccionado en SQL Server
Profiler.
EL panel Resource Waits muestra esperas para diferentes recursos: memoria, compilación,
red, etc.
Muestra el tiempo de espera (el tiempo que las tareas de SQL Server están esperando en
recursos del sistema), el tiempo de espera reciente, el tiempo acumulativo de espera y el
contador de espera promedio.
El panel Data File I/O muestra una lista de todos los archivos de base de datos: MDF, NDF
y LDF, sus nombres y rutas, actividad reciente de lectura y escritura y tiempo de respuesta.
EL panel Recent Expensive Queries muestra las consultas en los últimos 30 segundos que
usaron más recursos: procesador, memoria, disco y red. El menú contextual permite abrir la
consulta en una pestaña de consultas de SQL Server Management Studio y abrir su plan de
ejecución.
ACTIVITY MONITOR:
EL Activity Monitor puede ser abierto vía el ícono de Activity Monitor en la barra de
herramientas de SQL Server Management Studio, el atajo de teclado Ctrl+Alt+A, o el menú
contextual Object Explorer de la instancia de SQL Server.
Como se muestra, Activity Monitor rastrea sólo un conjunto predefinido de las métricas más
importantes de SQL Server. Métricas adicionales no pueden ser monitoreadas; las métricas
monitoreadas no pueden ser removidas. Sólo monitoreo en tiempo real es posible. No hay
una opción integrada para guardar el historial de métricas para un uso posterior. Por lo tanto,
Activity Monitor es útil para un monitoreo actual y una resolución de problemas básica; para
cualquier análisis más profundo y optimización de desempeño, es necesaria una herramienta
de monitoreo donde las métricas monitoreadas pueden ser seleccionadas, los umbrales
definidos y los datos históricos almacenados si es necesario.
DATA COLLECTOR:
A diferencia de Activity Monitor, Data Collector le permite especificar las métricas que
monitoreará. Ofrece tres conjuntos integrados de métricas (colectores de datos) con las
métricas de monitoreo de desempeño más importantes y comunes. Para monitorear métricas
de desempeño adicionales, colectores de datos personalizados pueden ser creados vía código
T-SQL o API.
Para usar Data Collector asegúrese de que SQL Server Integration Services están instalados
y que SQL Server Agent, Management Data Warehouse y Data Collection están activados.
Disk Usage, Query Statistics y Server Activity. Cada uno tiene su reporte integrado.
El conjunto de recolección de datos Disk Usage recolecta datos para los archivos de datos de
la base de datos (MDF y NDF), el archivo de registro de transacciones (LDF) y estadísticas
de I/O.
El reporte integrado Disk Usage está disponible en el menú contextual Data Collection.
Muestra el espacio usado por los archivos de la base de datos, las tendencias de crecimiento
y el crecimiento promedio diario
EL conjunto de recolectores de datos Server Activity recolecta datos acerca del procesador,
la memoria, el disco I/O y el uso de red. El reporte muestra la CPU, la memoria, el disco I/O
y el uso de la red, las esperas de SQL Server, la instancia de SQL Server y la actividad del
sistema operativo.
APEXSQL MONITOR:
Los datos de las métricas de desempeño capturados son mostrados como gráficos en cinco
pestañas por defecto, pero también en pestañas creadas por el usuario.
La pestaña System performance muestra las métricas de desempeño del sistema operativo:
Tiempo de procesador/longitud de cola del procesador, utilización de red, uso del archivo de
paginación, introducción de páginas por segundo, páginas por segundo, promedio de
escritura/lectura de bytes en el disco en bytes, longitud promedio y actual de la cola del disco,
promedio de segundos de disco por lectura/escritura, bytes de escritura/lectura de disco en
MB, espacio libre en el disco y memoria disponible en MB.
La pestaña Database performance muestra detalles acerca de los datos de la base de datos y
el tamaño del archivo del registro de transacciones.
La pestaña Query performance muestra las consultas más importantes que usaron la mayor
cantidad de recursos durante el periodo seleccionado, incluyendo la presentación gráfica de
las consultas más lentas por tiempo de CPU promedio, tiempo de ejecución promedio e I/o
por segundo. El número de consultas puede ser seleccionado por el usuario.
Las Custom tabs pueden ser moldeadas para la necesidad de usuarios individuales. Los
usuarios pueden crear y configurar sus propias pestañas para ser mostradas para conocer las
métricas críticas rápidamente y de manera fácil después de iniciar ApexSQL Monitor. Las
pestañas personalizadas pueden ser creadas para proveer una vista general a primera vista de
las métricas más importantes del sistema, la instancia SQL Server y la base de datos
ordenadas de una manera que puedan dar una percepción fácil del problema potencial.
Cómo usar ApexSQL Monitor
2. Haga clic en Add server en el menú para añadir la instancia SQL Server que desea
monitorear. Todas las instancias SQL Server monitoreadas serán mostradas en Servers list a
la izquierda.
3. Para configurar las métricas de desempeño, haga clic en Configure metrics en el menú.
Las métricas monitoreadas pueden ser configuradas en la base de datos, la instancia SQL
Server y a nivel de máquina.
4. En el mismo formulario usted puede configurar las alertas. Para habilitar una alarma
seleccione la casilla de verificación Alerting e ingrese los valores umbral.
5. Después de que haya configurado las alertas y métricas, haga clic en Apply en la parte
superior del formulario.
SI hay una alerta, esta será indicada por un ícono cerca de la instancia SQL Server en la lista
Servers. Para ver la lista y detalles para las alertas activas, haga clic en Alertas en el menú.
La lista muestra la métrica de desempeño, tiempo de inicio y final y el número de ocurrencias
para cada nivel de seguridad.
A diferencia de Activity Monitor y Data Collector, ApexSQL Monitor muestras las métricas
en gráficos de tiempo real, almacena los datos históricos en un repositorio central y muestra
los datos históricos en gráfico. Las alertas pueden ser configuradas en poco clics, con un
valor umbral específico ingresado para alertas de severidad baja, media y alta.