SET STATISTICS IO (Transact-SQL)

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance

Hace que SQL Server muestre información relacionada con la cantidad de actividad de E/S física y lógica generada por las instrucciones Transact-SQL. La E/S física está relacionada con el acceso a páginas de datos en disco y la E/S lógica, con el acceso a páginas de datos en memoria (caché de datos).

Convenciones de sintaxis de Transact-SQL

Sintaxis

SET STATISTICS IO { ON | OFF }

Output

La siguiente tabla muestra y describe los elementos de salida.

Elemento de salida Significado
Table Nombre de la tabla.
Scan count Número de búsquedas o exámenes iniciados después de alcanzar el nivel hoja en cualquier dirección para recuperar todos los valores y generar el conjunto de datos final de la salida.

El número de exámenes es 0 si el índice usado es un índice único o un índice agrupado en una clave principal y está buscando un solo valor. Por ejemplo, WHERE Primary_Key_Column = <value>.
El número de exámenes es 1 cuando se busca un valor con un índice agrupado que no es único y que se define en una columna de clave de no principal. Este proceso se realiza para comprobar si hay valores duplicados para el valor de clave que está buscando. Por ejemplo, WHERE Clustered_Index_Key_Column = <value>.
El recuento de exámenes es N cuando N es el número de diferentes búsquedas o exámenes iniciados hacia el lado izquierdo o derecho en el nivel hoja después de buscar un valor de clave mediante la clave de índice.
logical reads Número de páginas leídas de la caché de datos.
physical reads Número de páginas leídas del disco.
page server reads Número de páginas leídas de los servidores de páginas. **
read-ahead reads Número de páginas colocadas en la memoria caché por la consulta a través de la lectura anticipada.
page server read-ahead reads Número de páginas leídas de los servidores de páginas y colocadas en la memoria caché de datos por la consulta, a través de la lectura anticipada. **
lob logical reads Número de páginas loB* leídas de la caché de datos.
lob physical reads Número de páginas loB* leídas del disco.
lob page server reads Número de páginas loB* leídas de los servidores de páginas. **
lob read-ahead reads Número de páginas loB* colocadas en la caché de datos por la consulta, a través de la lectura anticipada.
lob page server read-ahead reads Número de páginas loB* leídas de los servidores de páginas y colocadas en la caché de datos por la consulta, a través de la lectura anticipada. **

* Los tipos de datos binarios de objetos grandes (LOB) incluyen páginas de índice text, ntext, image, varchar(max), nvarchar(max), varbinary(max)o columnstore index pages.

** Solo para Hiperescala de Azure SQL Database.

Comentarios

Cuando STATISTICS IO está activado, se muestra información estadística y, cuando se desactiva, no se muestra la información.

Cuando esta opción se establece en ON, las instrucciones Transact-SQL siguientes devolverán la información estadística hasta que la opción sea OFF.

El valor de se establece en tiempo de SET STATISTICS IO ejecución o ejecución y no en tiempo de análisis.

Nota:

Cuando las instrucciones Transact-SQL recuperan columnas LOB, es posible que algunas operaciones de recuperación de LOB necesiten recorrer el árbol de LOB varias veces. Esto puede hacer que SET STATISTICS IO notifique lecturas lógicas superiores a las esperadas.

Permisos

Para usar SET STATISTICS IO, los usuarios deben tener los permisos adecuados para ejecutar la instrucción Transact-SQL. El permiso SHOWPLAN no es necesario.

Ejemplos

En este ejemplo se muestra cómo SQL Server utiliza las lecturas lógicas y físicas mientras procesa las instrucciones.

USE AdventureWorks2022;  
GO         
SET STATISTICS IO ON;  
GO  
SELECT *   
FROM Production.ProductCostHistory  
WHERE StandardCost < 500.00;  
GO  
SET STATISTICS IO OFF;  
GO  

Esta es la salida del mensaje:

Table 'ProductCostHistory'. Scan count 1, logical reads 76, physical reads 0,
page server reads 0, read-ahead reads 0, page server read-ahead reads 0, 
lob logical reads 0, lob physical reads 0, lob page server reads 0, 
lob read-ahead reads 0, lob page server read-ahead reads 0.