sys.dm_db_index_usage_stats (Transact-SQL)sys.dm_db_index_usage_stats (Transact-SQL)

SE APLICA A: síSQL Server (a partir de 2008) síAzure SQL Database síAzure SQL Data Warehouse síAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server (starting with 2008) yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

Devuelve recuentos de diferentes tipos de operaciones de índice y la hora en que se realizó por última vez cada uno de los tipos de operación.Returns counts of different types of index operations and the time each type of operation was last performed.

En Base de datos SQL de AzureAzure SQL Database, las vistas de administración dinámica no pueden exponer información que impactaría a la contención de la base de datos ni acerca de otras bases de datos a las que el usuario tenga acceso.In Base de datos SQL de AzureAzure SQL Database, dynamic management views cannot expose information that would impact database containment or expose information about other databases the user has access to. Para evitar exponer esta información, cada fila que contiene datos que no pertenecen al inquilino conectado se filtra.To avoid exposing this information, every row that contains data that doesn't belong to the connected tenant is filtered out.

Nota

Sys.dm_db_index_usage_stats no devuelve información acerca de los índices optimizados para memoria.sys.dm_db_index_usage_stats does not return information about memory-optimized indexes. Para obtener información sobre el uso de índices optimizados para memoria, vea sys.dm_db_xtp_index_stats (Transact-SQL).For information about memory-optimized index use, see sys.dm_db_xtp_index_stats (Transact-SQL).

Nota

Para llamar a esta vista desde Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse o Almacenamiento de datos paralelosParallel Data Warehouse, utilice sys.dm_pdw_nodes_db_index_usage_stats.To call this view from Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse or Almacenamiento de datos paralelosParallel Data Warehouse, use sys.dm_pdw_nodes_db_index_usage_stats.

Nombre de columnaColumn name Tipo de datosData type DescripciónDescription
database_iddatabase_id smallintsmallint Id. de la base de datos en la que se define la tabla o vista.ID of the database on which the table or view is defined.
object_idobject_id intint Id. de la tabla o vista en la que se define el índice.ID of the table or view on which the index is defined
index_idindex_id intint Id. del índice.ID of the index.
user_seeksuser_seeks bigintbigint Número de consultas de búsqueda realizadas por el usuario.Number of seeks by user queries.
user_scansuser_scans bigintbigint Número de recorridos por consultas de usuario que no utilizan 'Buscar' predicado.Number of scans by user queries that did not use 'seek' predicate.
user_lookupsuser_lookups bigintbigint Número de búsquedas de marcadores realizadas por consultas de usuario.Number of bookmark lookups by user queries.
user_updatesuser_updates bigintbigint Número de consultas de actualización realizadas por el usuario.Number of updates by user queries. Esto incluye Insert, Delete y que representa el número de operaciones realizadas no las filas reales afectadas actualiza.This includes Insert, Delete, and Updates representing number of operations done not the actual rows affected. Por ejemplo, si elimina 1000 filas en una sola instrucción, este recuento se incrementa en 1For example, if you delete 1000 rows in one statement, this count increments by 1
last_user_seeklast_user_seek datetimedatetime Hora en que el usuario realizó la última búsqueda.Time of last user seek
last_user_scanlast_user_scan datetimedatetime Hora en que el usuario realizó el último recorrido.Time of last user scan.
last_user_lookuplast_user_lookup datetimedatetime Hora de la última búsqueda del usuario.Time of last user lookup.
last_user_updatelast_user_update datetimedatetime Hora en que el usuario realizó la última actualización.Time of last user update.
system_seekssystem_seeks bigintbigint Número de consultas de búsqueda realizadas por el sistema.Number of seeks by system queries.
system_scanssystem_scans bigintbigint Número de consultas de recorrido realizadas por el sistema.Number of scans by system queries.
system_lookupssystem_lookups bigintbigint Número de búsquedas realizadas por consultas del sistema.Number of lookups by system queries.
system_updatessystem_updates bigintbigint Número de consultas de actualización realizadas por el sistema.Number of updates by system queries.
last_system_seeklast_system_seek datetimedatetime Hora de última búsqueda del sistema.Time of last system seek.
last_system_scanlast_system_scan datetimedatetime Hora en que el sistema realizó el último recorrido.Time of last system scan.
last_system_lookuplast_system_lookup datetimedatetime Hora en que el sistema realizó la última búsqueda.Time of last system lookup.
last_system_updatelast_system_update datetimedatetime Hora en que el sistema realizó la última actualización.Time of last system update.
pdw_node_idpdw_node_id intint Se aplica a: Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse, Almacenamiento de datos paralelosParallel Data WarehouseApplies to: Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse, Almacenamiento de datos paralelosParallel Data Warehouse

El identificador para el nodo en esta distribución.The identifier for the node that this distribution is on.

ComentariosRemarks

Cada búsqueda, recorrido o actualización en el índice especificado realizado por una ejecución de la consulta se cuenta como un uso de ese índice e incrementa el contador correspondiente en esa vista.Every individual seek, scan, lookup, or update on the specified index by one query execution is counted as a use of that index and increments the corresponding counter in this view. Se ofrece información tanto de las operaciones causadas por las consultas emitidas por el usuario, como de las consultas generadas internamente, tales como los recorridos realizados para recopilar estadísticas.Information is reported both for operations caused by user-submitted queries, and for operations caused by internally generated queries, such as scans for gathering statistics.

El user_updates contador indica el nivel de mantenimiento en el índice causado por insertar, actualizar o eliminar operaciones en la tabla o vista subyacente.The user_updates counter indicates the level of maintenance on the index caused by insert, update, or delete operations on the underlying table or view. Puede utilizar esta vista para determinar los índices que las aplicaciones apenas utilizan.You can use this view to determine which indexes are used only lightly by your applications. También puede utilizar esta vista para determinar los índices que producen una sobrecarga de mantenimiento.You can also use the view to determine which indexes are incurring maintenance overhead. Puede considerar la opción de quitar los índices que produzcan esta sobrecarga, pero que no se utilicen para consultas o se usen con poca frecuencia.You may want to consider dropping indexes that incur maintenance overhead, but are not used for queries, or are only infrequently used for queries.

Los contadores se inicializan en un valor vacío cada vez que se inicia el servicio SQL ServerSQL Server (MSSQLSERVER).The counters are initialized to empty whenever the SQL ServerSQL Server (MSSQLSERVER) service is started. Además, cada vez que una base de datos se separa o se apaga (por ejemplo, porque se establece AUTO_CLOSE en ON), se quitan todas las filas asociadas con la base de datos.In addition, whenever a database is detached or is shut down (for example, because AUTO_CLOSE is set to ON), all rows associated with the database are removed.

Cuando se utiliza un índice, se agrega una fila a sys.dm_db_index_usage_stats si ya no existe una fila para el índice.When an index is used, a row is added to sys.dm_db_index_usage_stats if a row does not already exist for the index. Cuando se agrega la fila, sus contadores se establecen inicialmente en cero.When the row is added, its counters are initially set to zero.

Durante la actualización a SQL Server 2008 R2SQL Server 2008 R2, SQL Server 2012 (11.x)SQL Server 2012 (11.x), o SQL Server 2014 (12.x)SQL Server 2014 (12.x), se quitan las entradas de sys.dm_db_index_usage_stats.During upgrade to SQL Server 2008 R2SQL Server 2008 R2, SQL Server 2012 (11.x)SQL Server 2012 (11.x), or SQL Server 2014 (12.x)SQL Server 2014 (12.x), entries in sys.dm_db_index_usage_stats are removed. A partir SQL Server 2016 (13.x)SQL Server 2016 (13.x), se conservan las entradas tal como estaban antes de SQL Server 2008 R2SQL Server 2008 R2.Beginning with SQL Server 2016 (13.x)SQL Server 2016 (13.x), entries are retained as they were prior to SQL Server 2008 R2SQL Server 2008 R2.

PermisosPermissions

En SQL ServerSQL Server, requiere VIEW SERVER STATE permiso.On SQL ServerSQL Server, requires VIEW SERVER STATE permission.
En SQL DatabaseSQL Database, requiere el VIEW DATABASE STATE permiso en la base de datos.On SQL DatabaseSQL Database, requires the VIEW DATABASE STATE permission in the database.

Vea tambiénSee Also

Funciones y vistas de administración dinámica relacionadas con índices (Transact-SQL) Index Related Dynamic Management Views and Functions (Transact-SQL)
sys.dm_db_index_physical_stats (Transact-SQL) sys.dm_db_index_physical_stats (Transact-SQL)
sys.dm_db_index_operational_stats (Transact-SQL) sys.dm_db_index_operational_stats (Transact-SQL)
sys.indexes (Transact-SQL) sys.indexes (Transact-SQL)
sys.objects (Transact-SQL) sys.objects (Transact-SQL)
Supervisión y optimización del rendimientoMonitor and Tune for Performance