Herramientas de supervisión y optimización del rendimientoPerformance Monitoring and Tuning Tools

SE APLICA A: síSQL Server noAzure SQL Database noAzure Synapse Analytics (SQL DW) noAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

MicrosoftMicrosoft SQL ServerSQL Server proporciona un conjunto de herramientas completo para supervisar los eventos de SQL ServerSQL Server y para optimizar el diseño de la base de datos física.SQL ServerSQL Server provides a comprehensive set of tools for monitoring events in SQL ServerSQL Server and for tuning the physical database design. La elección de la herramienta depende del tipo de supervisión u optimización que se realice y de los eventos particulares que se supervisen.The choice of tool depends on the type of monitoring or tuning to be done and the particular events to be monitored.

A continuación se describen las herramientas de supervisión y optimización de SQL ServerSQL Server :Following are the SQL ServerSQL Server monitoring and tuning tools:

HerramientaTool DescripciónDescription
Funciones integradas (Transact-SQL)Built-in Functions (Transact-SQL) Las funciones integradas muestran estadísticas de instantáneas acerca de la actividad de SQL ServerSQL Server desde el inicio del servidor; estas estadísticas se almacenan en contadores de SQL ServerSQL Server predefinidos.Built-in functions display snapshot statistics about SQL ServerSQL Server activity since the server was started; these statistics are stored in predefined SQL ServerSQL Server counters. Por ejemplo, @@CPU_BUSY contiene el tiempo que la CPU ha estado ejecutando código de SQL ServerSQL Server; @@CONNECTIONS contiene el número de conexiones o intentos de conexión de SQL ServerSQL Server y @@PACKET_ERRORS contiene el número de paquetes de red generados en conexiones de SQL ServerSQL Server.For example, @@CPU_BUSY contains the amount of time the CPU has been executing SQL ServerSQL Server code; @@CONNECTIONS contains the number of SQL ServerSQL Server connections or attempted connections; and @@PACKET_ERRORS contains the number of network packets occurring on SQL ServerSQL Server connections.
DBCC (Transact-SQL)DBCC (Transact-SQL) Las instrucciones DBCC (Comandos de consola de base de datos) permiten comprobar las estadísticas de rendimiento y la coherencia lógica y física de una base de datos.DBCC (Database Console Command) statements enable you to check performance statistics and the logical and physical consistency of a database.
Asistente para la optimización de motor de base de datos (DTA)Database Engine Tuning Advisor (DTA) El Asistente para la optimización de motor de base de datos analiza los efectos en el rendimiento de las instrucciones Transact-SQLTransact-SQL ejecutadas en las bases de datos que desea optimizar.Database Engine Tuning Advisor analyzes the performance effects of Transact-SQLTransact-SQL statements executed against databases you want to tune. El Asistente para la optimización de motor de base de datos proporciona recomendaciones para agregar, quitar o modificar índices, vistas indizadas y particiones.Database Engine Tuning Advisor provides recommendations to add, remove, or modify indexes, indexed views, and partitioning.
Asistente para experimentación con bases de datos (DEA)Database Experimentation Assistant (DEA) Asistente para experimentación con bases de datos (DEA) es una solución de pruebas A/B nueva para SQL Server.Database Experimentation Assistant (DEA) is a new A/B testing solution for SQL Server. Ayuda a evaluar una versión de destino de Motor de base de datos de SQL ServerSQL Server Database Engine para una carga de trabajo determinada.It will assist in evaluating a targeted version of the Motor de base de datos de SQL ServerSQL Server Database Engine for a given workload. Al actualizar desde una versión anterior de SQL ServerSQL Server (a partir de SQL Server 2005 (9.x)SQL Server 2005 (9.x)) a cualquier versión más reciente de SQL ServerSQL Server, DEA será capaz de proporcionar métricas de análisis comparativas.When upgrading from a previous SQL ServerSQL Server versions (Starting with SQL Server 2005 (9.x)SQL Server 2005 (9.x)) to any newer version of SQL ServerSQL Server, DEA will be able to provide comparative analysis metrics.
Registros de erroresError Logs El registro de eventos de aplicación de Windows proporciona una imagen global de los eventos que ocurren en todos los sistemas operativos Windows Server y Windows, así como de los eventos de SQL ServerSQL Server, el Agente SQL ServerSQL Server y la búsqueda de texto completo.The Windows application event log provides an overall picture of events occurring on the Windows Server and Windows operating systems as a whole, as well as events in SQL ServerSQL Server, SQL ServerSQL Server Agent, and full-text search. Contiene información acerca de los eventos de SQL ServerSQL Server que no está disponible en ningún otro lugar.It contains information about events in SQL ServerSQL Server that is not available elsewhere. Puede utilizar la información del registro de errores para solucionar problemas relacionados con SQL ServerSQL Server.You can use the information in the error log to troubleshoot SQL ServerSQL Server-related problems.
Eventos extendidosExtended Events Extended Events es un sistema ligero de supervisión de rendimiento que usa muy pocos recursos de rendimiento.Extended Events is a light weight performance monitoring system that uses very few performance resources. Los eventos extendidos proporcionan tres interfaces de usuario gráficas (Asistente para nueva sesión, Nueva sesión y XE Profiler) para crear, modificar, mostrar y analizar los datos de la sesión.Extended Events provides three graphical user interfaces (New Session Wizard, New Session and the XE Profiler) to create, modify, display, and analyze your session data.
Funciones y vistas de administración dinámica relacionadas con ejecuciones (Transact-SQL)Execution Related Dynamic Management Views and Functions (Transact-SQL) Las DMV relacionadas con la ejecución permiten comprobar información relacionada con la ejecución.Execution related DMVs enable you to check execution related information.
Estadísticas de consultas dinámicas (LQS)Live Query Statistics (LQS) Muestra estadísticas en tiempo real sobre los pasos de ejecución de consultas.Displays real-time statistics about query execution steps. Dado que estos datos están disponibles mientras se ejecuta la consulta, las estadísticas de ejecución son extremadamente útiles para depurar problemas de rendimiento de las consultas.Because this data is available while the query is executing, these execution statistics are extremely useful for debugging query performance issues.
Supervisar el uso de recursos(Monitor de sistema)Monitor Resource Usage (System Monitor) La función principal del Monitor de sistema es hacer un seguimiento del uso de los recursos, como el número de solicitudes de página del administrador de búfer activas, que permite supervisar el rendimiento y la actividad del servidor mediante el uso de objetos y contadores predefinidos o contadores definidos por el usuario para supervisar eventos.System Monitor primarily tracks resource usage, such as the number of buffer manager page requests in use, enabling you to monitor server performance and activity using predefined objects and counters or user-defined counters to monitor events. El Monitor de sistema (Monitor de rendimiento en Microsoft Windows NT 4.0) recopila contadores y porcentajes en lugar de datos acerca de los eventos (por ejemplo, uso de la memoria, número de transacciones activas, número de bloqueos bloqueados o actividad de la CPU).System Monitor (Performance Monitor in Microsoft Windows NT 4.0) collects counts and rates rather than data about the events (for example, memory usage, number of active transactions, number of blocked locks, or CPU activity). Puede establecer umbrales en contadores específicos para generar alertas que notifiquen a los operadores.You can set thresholds on specific counters to generate alerts that notify operators.

El Monitor de sistema funciona en los sistemas operativos Microsoft Windows Server y Windows.System Monitor works on Microsoft Windows Server and Windows operating systems. Puede supervisar (remota o localmente) una instancia de SQL ServerSQL Server en Windows NT 4.0 o posterior.It can monitor (remotely or locally) an instance of SQL ServerSQL Server on Windows NT 4.0 or later.

La diferencia clave entre el SQL Server ProfilerSQL Server Profiler y el Monitor de sistema es que el SQL Server ProfilerSQL Server Profiler supervisa los eventos del motor de base de datos, mientras que el Monitor de sistema supervisa el uso de los recursos asociado con los procesos del servidor.The key difference between SQL Server ProfilerSQL Server Profiler and System Monitor is that SQL Server ProfilerSQL Server Profiler monitors Database Engine events, whereas System Monitor monitors resource usage associated with server processes.
Abrir el Monitor de actividad (SQL Server Management Studio)Open Activity Monitor (SQL Server Management Studio) El Monitor de actividad de SQL Server Management StudioSQL Server Management Studio es útil para obtener vistas ad hoc de la actividad actual y muestra gráficamente información sobre:The Activity Monitor in SQL Server Management StudioSQL Server Management Studio is useful for ad hoc views of current activity and graphically displays information about:

- Los procesos que se ejecutan en una instancia de SQL ServerSQL Server- Processes running on an instance of SQL ServerSQL Server
- Los procesos bloqueados- Blocked processes
- Los bloqueos- Locks
- La actividad del usuario- User activity
Panel de rendimientoPerformance Dashboard El panel de rendimiento de SQL Server Management StudioSQL Server Management Studio ayuda a identificar rápidamente si hay un cuello de botella de rendimiento en SQL ServerSQL Server.The Performance Dashboard in SQL Server Management StudioSQL Server Management Studio helps to quickly identify whether there is any current performance bottleneck in SQL ServerSQL Server.
Asistente para la optimización de consultas (QTA)Query Tuning Assistant (QTA) El Asistente para la optimización de consultas (QTA) guía a los usuarios a través del flujo de trabajo recomendado para mantener la estabilidad del rendimiento durante las actualizaciones a las versiones más recientes de SQL ServerSQL Server, como se documenta en la sección Mantener la estabilidad del rendimiento al actualizar a una versión más reciente de SQL Server de Escenarios de uso del Almacén de consultas.The Query Tuning Assistant (QTA) feature will guide users through the recommended workflow to keep performance stability during upgrades to newer SQL ServerSQL Server versions, as documented in the section Keep performance stability during the upgrade to newer SQL Server of Query Store Usage Scenarios.
Almacén de consultasQuery Store La característica Almacén de consultas ofrece datos detallados sobre el rendimiento y la elección del plan de consultas.The Query Store feature provides you with insight on query plan choice and performance. Esta característica simplifica la solución de problemas de rendimiento al permitirle encontrar rápidamente las diferencias de rendimiento provocadas por cambios en los planes de consulta.It simplifies performance troubleshooting by helping you quickly find performance differences caused by query plan changes. El Almacén de consultas captura automáticamente un historial de consultas, planes y estadísticas en tiempo de ejecución y las conserva para su revisión.Query Store automatically captures a history of queries, plans, and runtime statistics, and retains these for your review. Además, separa los datos por ventanas de tiempo, lo que permite ver patrones de uso de la base de datos y comprender cuándo se produjeron cambios del plan de consultas en el servidor.It separates data by time windows so you can see database usage patterns and understand when query plan changes happened on the server.
Seguimiento de SQLSQL Trace Transact-SQLTransact-SQL que crean, filtran y definen trazas:stored procedures that create, filter, and define tracing:

sp_trace_create (Transact-SQL)sp_trace_create (Transact-SQL)
sp_trace_generateevent (Transact-SQL)sp_trace_generateevent (Transact-SQL)
sp_trace_setevent (Transact-SQL)sp_trace_setevent (Transact-SQL)
sp_trace_setfilter (Transact-SQL)sp_trace_setfilter (Transact-SQL)
sp_trace_setstatus (Transact-SQL)sp_trace_setstatus (Transact-SQL)
SQL Server Distributed ReplaySQL Server Distributed Replay MicrosoftMicrosoft SQL ServerSQL Server Distributed Replay puede usar varios equipos para reproducir los datos de seguimiento, simulando una carga de trabajo crítica.SQL ServerSQL Server Distributed Replay can use multiple computers to replay trace data, simulating a mission-critical workload.
sp_trace_setfilter (Transact-SQL)sp_trace_setfilter (Transact-SQL) SQL Server ProfilerSQL Server Profiler realiza un seguimiento de los eventos de procesos del motor, como el inicio de un lote o una transacción, lo que permite supervisar la actividad del servidor y de la base de datos (por ejemplo, interbloqueos, errores irrecuperables o actividad de inicio de sesión).tracks engine process events, such as the start of a batch or a transaction, enabling you to monitor server and database activity (for example, deadlocks, fatal errors, or login activity). Puede capturar datos de SQL Server ProfilerSQL Server Profiler en un archivo o una tabla de SQL ServerSQL Server para su análisis posterior y también puede reproducir paso a paso los eventos capturados en SQL ServerSQL Server para ver qué sucedió exactamente.You can capture SQL Server ProfilerSQL Server Profiler data to a SQL ServerSQL Server table or a file for later analysis, and you can also replay the events captured on SQL ServerSQL Server step by step, to see exactly what happened.
Procedimientos almacenados del sistema (Transact-SQL)System Stored Procedures (Transact-SQL) Los siguientes procedimientos almacenados del sistema de SQL ServerSQL Server suponen una alternativa muy eficaz para realizar muchas tareas de supervisión:The following SQL ServerSQL Server system stored procedures provide a powerful alternative for many monitoring tasks:

sp_who (Transact-SQL):sp_who (Transact-SQL):
Notifica información de instantáneas acerca de los usuarios y procesos actuales de SQL ServerSQL Server, incluida la información sobre la instrucción que se ejecuta actualmente y si la instrucción está bloqueada.Reports snapshot information about current SQL ServerSQL Server users and processes, including the currently executing statement and whether the statement is blocked.

sp_lock (Transact-SQL):sp_lock (Transact-SQL):
Proporciona información de instantánea acerca de bloqueos, incluidos los identificadores de objeto y de índice, el tipo de bloqueo y el tipo o recurso al que se aplica el bloqueo.Reports snapshot information about locks, including the object ID, index ID, type of lock, and type or resource to which the lock applies.

sp_spaceused (Transact-SQL):sp_spaceused (Transact-SQL):
Muestra una estimación de la cantidad actual de espacio en disco que utiliza una tabla (o toda la base de datos).Displays an estimate of the current amount of disk space used by a table (or a whole database).

sp_monitor (Transact-SQL):sp_monitor (Transact-SQL):
Muestra estadísticas que incluyen el uso de la CPU, el uso de E/S y el tiempo de inactividad desde la última vez que se ejecutó sp_monitor .Displays statistics, including CPU usage, I/O usage, and the amount of time idle since sp_monitor was last executed.
Marcas de seguimiento (Transact-SQL)Trace Flags (Transact-SQL) Las marcas de seguimiento muestran información acerca de una actividad específica en el servidor para diagnosticar problemas o causas de bajo rendimiento (por ejemplo, cadenas de interbloqueos).Trace flags display information about a specific activity within the server and are used to diagnose problems or performance issues (for example, deadlock chains).

Elegir una herramienta de supervisiónChoosing a Monitoring Tool

La elección de la herramienta de supervisión depende del evento o de la actividad que se va a supervisar.The choice of a monitoring tool depends on the event or activity to be monitored.

Evento o actividadEvent or activity Eventos extendidosExtended Events SQL Server ProfilerSQL Server Profiler Distributed ReplayDistributed Replay Monitor de sistemaSystem Monitor Monitor de actividadActivity Monitor Transact-SQLTransact-SQL Registros de erroresError logs Panel de rendimientoPerformance Dashboard
Análisis de tendenciasTrend analysis Yes Yes Yes
Reproducción de los eventos capturadosReplaying captured events Sí (desde un equipo único)Yes (From a single computer) Sí (desde varios equipos)Yes (From multiple computers)
Supervisión ad hocAd hoc monitoring 1Yes1 Yes Yes Yes Yes Yes
Generación de alertasGenerating alerts Yes
Interfaz gráficaGraphical interface Yes Yes Yes Yes Yes Yes
Uso en aplicaciones personalizadasUsing within custom application Yes 2Yes2 Yes

1 Uso de Generador de eventos XEvent de SQL Server Management Studio 1 Using SQL Server Management Studio XEvent Profiler
2 Uso de procedimientos almacenados del sistema de SQL Server ProfilerSQL Server Profiler.2 Using SQL Server ProfilerSQL Server Profiler system stored procedures.

Herramientas de supervisión de WindowsWindows Monitoring Tools

Los sistemas operativos Windows y Windows Server 2003 proporcionan además estas herramientas de supervisión.Windows operating systems and Windows Server 2003 also provide these monitoring tools.

HerramientaTool DescripciónDescription
Administrador de tareasTask Manager Muestra una sinopsis de los procesos y las aplicaciones que se ejecutan en el sistema.Shows a synopsis of the processes and applications running on the system.
Agente de supervisión de redNetwork Monitor Agent Supervisa el tráfico de red.Monitors network traffic.

Para obtener más información acerca de las herramientas de los sistemas operativos Windows o Windows Server, vea la documentación de Windows.For more information about Windows operating systems or Windows Server tools, see the Windows documentation.