sys.dm_db_index_usage_stats (Transact-SQL)

 

DIESES THEMA GILT FÜR:jaSQL Server (ab 2008)jaAzure SQL-DatenbankjaAzure SQL Data Warehouse jaParallel Data Warehouse

Gibt die Anzahl verschiedener Arten von Indexvorgängen und den Zeitpunkt zurück, wann die einzelnen Vorgänge in SQL Server zuletzt ausgeführt wurden.

In Azure SQL-Datenbankkönnen dynamische Verwaltungssichten keine Informationen verfügbar machen, die sich auf die Datenbankkapselung auswirken würden oder die sich auf andere Datenbanken beziehen, auf die der Benutzer Zugriff hat. Um zu vermeiden, dass diese Informationen verfügbar gemacht werden, wird jede Zeile mit Daten, die zum verbundenen Mandanten gehören, herausgefiltert.

System_CAPS_ICON_note.jpg Hinweis


Sys. dm_db_index_usage_stats gibt keine Informationen zu speicheroptimierten Indizes zurück. Informationen zur Verwendung von speicheroptimierten Indizes finden Sie unter dm_db_xtp_index_stats (Transact-SQL).

System_CAPS_ICON_note.jpg Hinweis


Aufrufen von Azure SQL Data Warehouse oder Parallel Data Warehouse, verwenden Sie den Namen sys.dm_pdw_nodes_db_index_usage_stats.

SpaltennameDatentypDescription
database_id"smallint"ID der Datenbank, für die die Tabelle oder Sicht definiert ist.
object_idintID der Tabelle oder Sicht, für die der Index definiert ist.
index_idintDie ID des Index.
user_seeksbigintAnzahl von Suchvorgängen durch Benutzerabfragen.
user_scansbigintAnzahl von Scanvorgängen durch Benutzerabfragen. Diese Zahl entspricht Scans, die "seek-Prädikat" nicht verwendet haben.
user_lookupsbigintAnzahl von Lesezeichen-Nachschlagevorgängen durch Benutzerabfragen.
user_updatesbigintAnzahl von Updates durch Benutzerabfragen. Dies schließt INSERT-, DELETE- und aktualisiert, die Anzahl von Vorgängen, die nicht der tatsächliche betroffenen Zeilen darstellt. Z. B. Wenn Sie 1000 Zeilen in einer einzelnen Anweisung löschen, erhöht diese Zahl um 1
last_user_seek"DateTime"Zeitpunkt des letzten Suchvorgangs durch den Benutzer
last_user_scan"DateTime"Zeitpunkt des letzten Scanvorgangs durch den Benutzer
last_user_lookup"DateTime"Zeitpunkt des letzten Nachschlagevorgangs durch den Benutzer.
last_user_update"DateTime"Zeitpunkt des letzten Updates durch den Benutzer.
system_seeksbigintAnzahl von Suchvorgängen durch Systemabfragen.
system_scansbigintAnzahl von Scanvorgängen durch Systemabfragen.
system_lookupsbigintAnzahl von Nachschlagevorgängen durch Systemabfragen.
system_updatesbigintAnzahl von Updates durch Systemabfragen.
last_system_seek"DateTime"Zeitpunkt des letzten Systemsuchvorgangs.
last_system_scan"DateTime"Zeitpunkt des letzten Systemscanvorgangs.
last_system_lookup"DateTime"Zeitpunkt des letzten Systemnachschlagevorgangs.
last_system_update"DateTime"Zeitpunkt des letzten Systemupdates.
pdw_node_idintGilt für: Azure SQL Data Warehouse,Parallel Data Warehouse

Der Bezeichner für den Knoten, dem auf diesem Verteilungspunkt befindet.

Jeder einzelne Such-, Scan-, Nachschlage- oder Updatevorgang für den angegebenen Index durch eine Abfrageausführung zählt als Verwendung dieses Indexes, und der entsprechende Zähler in dieser Sicht wird inkrementiert. Informationen werden für Vorgänge angezeigt, die durch Benutzerabfragen verursacht werden, und für Vorgänge, die durch intern generierte Abfragen verursacht werden, wie z. B. Scans zum Sammeln von Statistikdaten.

Die User_updates -Leistungsindikator gibt die wartungsebene für den Index, der durch Insert verursacht, update oder delete-Vorgänge in der zugrunde liegenden Tabelle oder Sicht. Mithilfe dieser Sicht können Sie ermitteln, welche Indizes selten von den Anwendungen verwendet werden. Außerdem können Sie mithilfe dieser Sicht bestimmen, welche Indizes einen hohen Wartungsaufwand erzeugen. Sie können Indizes löschen, die einen hohen Wartungsaufwand erzeugen, aber nicht oder nur selten für Abfragen verwendet werden.

Die Zähler werden auf 'leer' gesetzt, sobald ein SQL Server-Dienst (MSSQLSERVER) gestartet wird. Außerdem werden jedes Mal, wenn eine Datenbank getrennt oder beendet wird (beispielsweise, weil AUTO_CLOSE auf ON festgelegt ist), alle dieser Datenbank zugehörigen Zeilen entfernt.

Wenn ein Index verwendet wird, wird eine Zeile hinzugefügt, um Sys. dm_db_index_usage_stats Wenn eine Zeile für den Index nicht bereits vorhanden ist. Beim Hinzufügen der Zeile sind deren Zähler anfänglich auf&0; festgelegt.

Während des Upgrades auf SQL Server 2008 R2, SQL Server 2012, oder SQL Server 2014, Einträge in Sys. dm_db_index_usage_stats werden entfernt. Beginnend mit SQL Server 2016, Einträge werden beibehalten, wie vor SQL Server 2008 R2.

Erfordert die VIEW SERVER STATE-Berechtigung. Weitere Informationen finden Sie unter dynamische Verwaltungssichten und-Funktionen (Transact-SQL).

Dynamische Verwaltungssichten und-Funktionen (Transact-SQL)
Objektbezogene dynamische Verwaltungssichten und-Funktionen (Transact-SQL) Index
Sys. dm_db_index_physical_stats (Transact-SQL)
Sys. dm_db_index_operational_stats (Transact-SQL)
Sys.Indexes (Transact-SQL)
Sys.Objects (Transact-SQL)
Überwachen und Optimieren der Leistung

Community-Beiträge

HINZUFÜGEN
Anzeigen: