Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Database w Microsoft Fabric
Zwraca liczbę różnych typów operacji indeksowych oraz czas ostatniego wykonania każdego typu operacji.
W usłudze Azure SQL Database dynamiczne widoki zarządzania nie mogą ujawniać informacji, które mają wpływ na zawieranie bazy danych lub uwidacznianie informacji o innych bazach danych, do których użytkownik ma dostęp. Aby uniknąć ujawniania tych informacji, każdy wiersz zawierający dane, które nie należą do połączonej dzierżawy, jest filtrowany.
Uwaga / Notatka
DMV sys.dm_db_index_usage_stats nie zwraca informacji o indeksach zoptymalizowanych pod pamięć ani indeksach przestrzennych. Aby uzyskać informacje o wykorzystaniu indeksu zoptymalizowanego pod względem pamięci, zobacz sys.dm_db_xtp_index_stats (Transact-SQL).
Uwaga / Notatka
Aby wywołać ten widok z Azure Synapse Analytics lub Analytics Platform System (PDW), użyj sys.dm_pdw_nodes_db_index_usage_stats. Ta składnia nie jest obsługiwana przez bezserwerową pulę SQL w usłudze Azure Synapse Analytics.
| Nazwa kolumny | Typ danych | Description |
|---|---|---|
| database_id | smallint | ID bazy danych, na której zdefiniowana jest tabela lub widok. W usłudze Azure SQL Database wartości są unikatowe w ramach pojedynczej bazy danych lub elastycznej puli, ale nie w obrębie serwera logicznego. |
| object_id | int | ID tabeli lub widoku, na którym zdefiniowany jest indeks |
| index_id | int | Identyfikator indeksu. |
| user_seeks | bigint | Liczba wyszukiwań według zapytań użytkownika. |
| user_scans | bigint | Liczba skanów przez zapytania użytkownika, które nie używały predykatu 'seek'. |
| user_lookups | bigint | Liczba wyszukiwań zakładek według zapytań użytkowników. |
| user_updates | bigint | Liczba aktualizacji według zapytań użytkowników. Obejmuje to wstawienie, usunięcie i aktualizację oznaczające liczbę wykonanych operacji, a nie rzeczywiste wiersze dotknięte. Na przykład, jeśli usuniesz 1000 wierszy w jednym zawołaniu, liczba ta wzrasta o 1 |
| last_user_seek | datetime | Czas ostatniego wyszukiwania użytkownika |
| last_user_scan | datetime | Czas ostatniego skanowania użytkownika. |
| last_user_lookup | datetime | Czas ostatniego wyszukiwania użytkownika. |
| last_user_update | datetime | Czas ostatniej aktualizacji użytkownika. |
| system_seeks | bigint | Liczba wyszukiwań według zapytań systemowych. |
| system_scans | bigint | Liczba skanów według zapytań systemowych. |
| system_lookups | bigint | Liczba wyszukiwań według zapytań systemowych. |
| system_updates | bigint | Liczba aktualizacji według zapytań systemowych. |
| last_system_seek | datetime | Czas ostatniego poszukiwania systemu. |
| last_system_scan | datetime | Czas ostatniego skanowania systemu. |
| last_system_lookup | datetime | Czas ostatniego wyszukiwania systemu. |
| last_system_update | datetime | Czas ostatniej aktualizacji systemu. |
| pdw_node_id | int |
Dotyczy do: Azure Synapse Analytics, Analytics Platform System (PDW) Identyfikator węzła, w ramach którego znajduje się ta dystrybucja. |
Uwagi
Każde pojedyncze wyszukiwanie, skanowanie, wyszukiwanie lub aktualizacja określonego indeksu przez jedno wykonanie zapytania jest liczone jako użycie tego indeksu i zwiększa odpowiadający mu licznik w tym widoku. Informacje są raportowane zarówno za operacje wywołane przez zapytania przesłane przez użytkownika, jak i za operacje wywołane przez wewnętrzne zapytania, takie jak skanowanie w celu zbierania statystyk.
Kolumna user_updates jest licznikiem utrzymania indeksu spowodowanego operacjami wstawiania, aktualizacji lub usuwania w tabeli lub widoku. Możesz użyć tego widoku, aby określić, które indeksy są używane tylko w sposób powierzchowny przez Twoje aplikacje. Możesz także użyć tego widoku, aby określić, które indeksy generują narzut utrzymania. Możesz rozważyć rezygnację z indeksów, które generują narzut utrzymania, ale nie są używane do zapytań lub są używane tylko rzadko.
Liczniki są inicjalizowane do opróżniania się za każdym razem, gdy silnik bazy danych zostanie uruchomiony. Użyj kolumny sqlserver_start_time w sys.dm_os_sys_info , aby znaleźć ostatni czas uruchamiania aparatu bazy danych. Dodatkowo, gdy baza danych zostaje odłączona lub zamknięta (na przykład dlatego, że AUTO_CLOSE ustawione na ON), wszystkie wiersze powiązane z bazą danych są usuwane.
Gdy używany jest indeks, dodaje sys.dm_db_index_usage_stats się wiersz, jeśli nie istnieje już wiersz dla tego indeksu. Po dodaniu wiersza jego liczniki początkowo są ustawiane na zero.
Podczas aktualizacji do SQL Server 2008 R2 (10.50.x), SQL Server 2012 (11.x) lub SQL Server 2014 (12.x) wpisy w są sys.dm_db_index_usage_stats usuwane. Począwszy od SQL Server 2016 (13.x), wpisy są zachowywane tak, jak były przed SQL Server 2008 R2 (10.50.x).
Permissions
W programie SQL Server i usłudze SQL Managed Instance wymagane jest VIEW SERVER STATE uprawnienie.
W przypadku celów usługi SQL Database Basic, S0 i S1 oraz baz danych w elastycznych pulach wymagane jest konto administratora serwera , konto administratora firmy Microsoft Entra lub członkostwo w ##MS_ServerStateReader##roli serwera . We wszystkich innych celach usługi SQL Database wymagane VIEW DATABASE STATE jest uprawnienie do bazy danych lub członkostwo w ##MS_ServerStateReader## roli serwera.
Uprawnienia dla programu SQL Server 2022 i nowszych
Wymaga uprawnienia WYŚWIETL STAN WYDAJNOŚCI SERWERA na serwerze.
Zobacz także
Indeksowanie powiązanych dynamicznych widoków zarządzania i funkcji (Transact-SQL)
sys.dm_db_index_physical_stats (Transact-SQL)
sys.dm_db_index_operational_stats (Transact-SQL)
sys.indexes (Transact-SQL)
sys.objects (Transact-SQL)
sys.dm_os_sys_info (Transact-SQL)
Monitorowanie i dostrajanie pod kątem wydajności