sys.dm_exec_query_optimizer_info (języka Transact-SQL)

Zwraca szczegółowe informacje statystyczne dotyczące funkcjonowania SQL Server optymalizator kwerendy.W tym widoku można używać podczas dostrajania obciążenia do identyfikowania problemów optymalizacji kwerendy lub ulepszenia.Na przykład całkowita liczba optymalizacje, wartość dotychczasowy czas i wartość ostateczny koszt można użyć do porównania optymalizacje kwerendy aktualnego obciążenia pracą i wszelkich zaobserwowanych podczas procesu dostosowywania zmian. Niektóre liczniki dostarczania danych, która jest odpowiednia tylko dla SQL Server wewnętrznego użytku diagnostycznych.Te liczniki są tylko oznaczone jako "Internal".

Nazwa

Typ danych

Opis

Licznik

nvarchar(4000)

Nazwa statystyki Optymalizator zdarzenie.

wystąpienie

bigint

Liczba wystąpień optymalizacji zdarzenie dla tego licznika.

wartość

float

Średnia wartość właściwość na wystąpienie zdarzenie .

Uprawnienia

Wymaga uprawnienia Wyświetlanie stanu serwera na serwerze.

Uwagi

sys.dm_exec_query_optimizer_info zawiera następujące właściwości (liczniki).Wszystkie wystąpienia wartości kumulują się i są zestaw na 0, podczas ponownego uruchamiania systemu.Wszystkie wartości pól wartość jest zestaw na NULL podczas ponownego uruchamiania systemu.Wszystkie wartościkolumna wartości określające średnią należy użyć wartości wystąpienia w tym samym wierszu jako mianownik przy obliczaniu średniej.Wszystkie kwerendy optymalizacje są mierzone podczas SQL Server określa zmiany dm_exec_query_optimizer_info, włączając w to zarówno kwerend generowanych przez użytkownika i systemu.Wykonanie planu już buforowane nie powoduje zmiany wartości w dm_exec_query_optimizer_info, tylko do optymalizacji są znaczące.

Licznik

Wystąpienie

Wartość

Optymalizacje

Całkowita liczba optymalizacje.

Nie dotyczy

Upłynięte czas

Całkowita liczba optymalizacje.

Średnia upłynął czas na optymalizację poszczególnych instrukcja (zapytanie) w sekundach.

ostateczny koszt

Całkowita liczba optymalizacje.

Średni koszt szacowany zoptymalizowane planu w jednostkach kosztu własnego.

Trivial plan

Tylko wewnętrzne

Tylko wewnętrzne

zadania

Tylko wewnętrzne

Tylko wewnętrzne

nie planu

Tylko wewnętrzne

Tylko wewnętrzne

Wyszukiwanie 0

Tylko wewnętrzne

Tylko wewnętrzne

Wyszukiwanie 0 czas

Tylko wewnętrzne

Tylko wewnętrzne

Wyszukaj 0 zadań

Tylko wewnętrzne

Tylko wewnętrzne

Wyszukiwanie 1

Tylko wewnętrzne

Tylko wewnętrzne

Wyszukiwanie 1 czas

Tylko wewnętrzne

Tylko wewnętrzne

Wyszukaj 1 zadań

Tylko wewnętrzne

Tylko wewnętrzne

Wyszukiwanie 2

Tylko wewnętrzne

Tylko wewnętrzne

Wyszukiwanie 2 czas

Tylko wewnętrzne

Tylko wewnętrzne

Wyszukaj 2 zadań

Tylko wewnętrzne

Tylko wewnętrzne

uzyskanie montażowym 0 etap 1

Tylko wewnętrzne

Tylko wewnętrzne

uzyskanie montażowym 1 etap 2

Tylko wewnętrzne

Tylko wewnętrzne

limit czasu

Tylko wewnętrzne

Tylko wewnętrzne

Przekroczono limit pamięci

Tylko wewnętrzne

Tylko wewnętrzne

Wstaw stmt

Liczba optymalizacje, które są dla instrukcji INSERT.

Nie dotyczy

Usuń stmt

Liczba optymalizacje, które są dla instrukcji DELETE.

Nie dotyczy

Aktualizacja stmt

Liczba optymalizacje, które są dla instrukcji UPDATE.

Nie dotyczy

zawiera podzapytanie

Liczba optymalizacje kwerendę, która zawiera co najmniej jeden podzapytanie.

Nie dotyczy

unnest nie powiodło się

Tylko wewnętrzne

Tylko wewnętrzne

tabele

Całkowita liczba optymalizacje.

Średnia liczba tabel na kwerendę zoptymalizowana.

wskazówki

Liczba określono niektóre wskazówki.Wskazówki zliczane obejmują: SPRZĘŻENIA, grupy, Unia i FORCE ORDER wskazówki kwerendy, opcji zestaw PLAN życie i wskazówki łączyć .

Nie dotyczy

Wskazówka zamówienia

Określono wiele razy siły zamówienia wskazówka.

Nie dotyczy

Wskazówkałączyć

Ile razy algorytm łączyć zostało wymuszone przez wskazówkę łączyć .

Nie dotyczy

Odwołanie do widoku

Liczba widoku odwołano się w kwerendzie.

Nie dotyczy

zdalne kwerendy

Liczba optymalizacje gdzie kwerendy odwołuje się do co najmniej jednego dane zdalne źródło, takiego jak tabela o nazwie czteroczęściowym lub OPENROWSET wyniku.

Nie dotyczy

DOP maksymalna

Całkowita liczba optymalizacje.

Skuteczne MAXDOP wartość średnią dla planu zoptymalizowanego.Domyślnie skuteczne MAXDOP jest określana przez maksymalny stopień równoległości prostych serwera konfiguracja opcji i mogą zostać zastąpione przez wartość wskazówkę dotyczącą kwerendy MAXDOP dla określonej kwerendy.

rekursja maksymalny poziom

Liczba optymalizacje, w których określono MAXRECURSION poziom większa niż 0 z wskazówkę dotyczącą kwerendy.

Średni poziom MAXRECURSION optymalizacje gdzie rekursji maksymalny poziom jest określany za pomocą kwerendy wskazówkę dotyczącą.

Widoki indeksowane załadowane

Tylko wewnętrzne

Tylko wewnętrzne

Widoki indeksowane dopasowane

Liczba optymalizacje, gdzie jeden lub więcej widoków indeksowanych zostały dopasowane.

Średnia liczba widoków dopasowane.

Widoki indeksowane używane

Liczba optymalizacje, gdzie jeden lub więcej Widoki indeksowane są używane w danych wyjściowych planu po filtrowanego.

Średnia liczba używanych widoków.

Widoki indeksowane zaktualizowane

Liczba optymalizacje DML instrukcja , które wywołują planu, który obsługuje jeden lub więcej widoków indeksowanych.

Średnia liczba widoków utrzymane.

żądanie dynamicznej kursor

Liczba optymalizacje, w których zostały określone żądanie dynamicznej kursor .

Nie dotyczy

żądanie szybkiego przewijania do przodu kursor

Liczba optymalizacje, w których zostały określone żądanie kursor przewijanie.

Nie dotyczy

stmt korespondencji seryjnej

Liczba optymalizacje znajdujące się przy sporządzaniu sprawozdań korespondencji seryjnej.

Nie dotyczy

Przykłady

A.Wyświetlanie statystyk na wykonanie Optymalizator

Co to są bieżące statystyki wykonanie Optymalizator dla tego wystąpienie programu SQL Server?

SELECT * FROM sys.dm_exec_query_optimizer_info;

B.Wyświetlanie całkowitej liczby optymalizacje

Ile optymalizacje są wykonywane?

SELECT occurrence AS Optimizations FROM sys.dm_exec_query_optimizer_info
WHERE counter = 'optimizations';

C.Średnia upłynął czas na optymalizacji

Co to jest średnią upłynął czas na optymalizacji?

SELECT ISNULL(value,0.0) AS ElapsedTimePerOptimization
FROM sys.dm_exec_query_optimizer_info WHERE counter = 'elapsed time';

D.Ułamek optymalizacje, które mogą obejmować podkwerendy

Jaki ułamek zoptymalizowane kwerendy zawarte podzapytanie?

SELECT (SELECT CAST (occurrence AS float) FROM sys.dm_exec_query_optimizer_info WHERE counter = 'contains subquery') /
       (SELECT CAST (occurrence AS float) 
        FROM sys.dm_exec_query_optimizer_info WHERE counter = 'optimizations')
        AS ContainsSubqueryFraction;