Logical and Physical Operators Reference
Opis operatorów w jaki sposób SQL Server wykonuje kwerendę lub instrukcję język edycji danych (DML). optymalizator kwerendy do tworzenia planu kwerend, aby utworzyć wynik określonych w kwerendzie lub do wykonania tej operacji, określona w instrukcja DML korzysta z podmiotów gospodarczych.Plan kwerend jest drzewo składający się z operatorów fizycznych.
Operatory są klasyfikowane jako operatorów logicznych i fizycznych.Operatory logiczne opisano relacyjne kwerendy operacji poziom pojęciach.Operatorzy fizycznie faktycznie implementuje operacji zdefiniowanych przez operator logiczny, przy użyciu metoda konkretnych lub algorytm.Na przykład "łączyć"jest operacja logiczna, dlatego"zagnieżdżone łączyć pętli" jest operator fizycznych.
Operatory logiczne
Operatory logiczne opisano relacyjne algebraic operację, używane do przetwarzania instrukcja.Innymi słowy operatory logiczne opisują koncepcyjnie wymaga działania, jakie mają być wykonywane.Operatorzy fizycznie
Operatorzy fizycznie wykonuje działanie opisane przez operatorów logicznych.Każda fizyczna operatorów jest obiekt lub procedury, która wykonuje operację.Na przykład niektóre operatory fizycznego dostępu kolumn lub wierszy z tabela, widoku lub indeksu.Innym podmiotom fizycznego wykonania innych rodzajów operacji: The agregacja operator oblicza wyrażenie zawierające funkcje MIN, MAX, agregacja, ile.liczb lub AVG i Scalanie łączyć operator wykonuje różne rodzaje operacji logicznej łączyć.Operatorzy fizycznie zainicjować, zbieranie danych i Zamknij.W szczególności fizycznej operator może odpowiedzieć następującego wywołania metoda trzech:
Init(): The Init() metoda powoduje fizycznego operator inicjowanie sam, a także skonfigurowanie wszelkich struktur danych wymagane.Operator fizycznego może pojawić się wiele Init() wywołuje, chociaż zazwyczaj otrzymuje tylko jeden operator fizycznych.
GetNext(): The GetNext() metoda powoduje fizycznego operator uzyskanie pierwszej lub kolejnych wierszy danych.Operator fizycznego może pojawić się zero lub wiele GetNext() wywołania.
Close(): The Close() metoda powoduje fizycznego operator do wykonywania pewnych operacji oczyszczania i sam zamknięty.Operator fizycznych tylko jedną do odbierania Close() wywołanie.
The GetNext() metoda returns one row of data, and the number of times it is called appears as ActualRows in the plan wykonania output that is produced by using zestaw STATISTICS PROFILE ON or zestaw STATISTICS XML ON.Aby uzyskać więcej informacji na temat tych opcji zestaw, zobacz SET STATISTICS PROFILE (Transact-SQL) i SET STATISTICS XML (Transact-SQL).
The ActualRebinds and ActualRewinds counts that appear in plan wykonania output refer to the number of times that the Init() metoda is called.Chyba że operator znajduje się na wewnętrznej stronie łączyć pętli, ActualRebinds jest równa jeden i ActualRewinds jest równa zero.Jeśli operator znajduje się na wewnętrznej stronie pętlę łączyć suma liczby rebinds i przewija powinna być równa Liczba wierszy przetwarzane po stronie zewnętrznej łączyć.A rebind oznacza, że jeden lub więcej parametrów skorelowanej łączyć zmieniony i musi być reevaluated wewnętrznej stronie.Przewijania do tyłu oznacza, że żaden z parametrów skorelowanej zmieniona i może być ponownie użyte zestaw wyników wewnętrznego wcześniejsze.
ActualRebinds and ActualRewinds znajdują się w danych wyjściowych XML plan wykonania tworzone za pomocą ON zestaw STATISTICS XML.Tylko są one wypełniane dla Nieklastrowany indeks buforu, Zdalne kwerendy, Wiersz Licznik buforu, Sortowanie, Tabela buforu, and funkcja zwracająca tabelę podmiotów gospodarczych.ActualRebinds and ActualRewinds może być także wypełnione dla Potwierdzenia and Filtr operatorów podczas StartupExpression atrybut jest ustawiony na wartość TRUE.
Kiedy ActualRebinds and ActualRewinds znajdują się w plan wykonania XML, są one porównywalne z EstimateRebinds and EstimateRewinds.Kiedy jest nieobecny, szacowaną liczbę wierszy)EstimateRows) jest porównywalna z rzeczywista liczba wierszy (ActualRows).Należy zauważyć, że rzeczywista produkcja plan wykonania graficzny Wyświetla zer dla rzeczywistego rebinds i przewija rzeczywiste, gdy są one nieobecny.Aby uzyskać więcej informacji na temat Showplans graficzny zobacz Displaying Graphical Execution Plans (SQL Server Management Studio).
Licznik pokrewne ActualEndOfScans, jest dostępna tylko wtedy, gdy plan wykonania danych wyjściowych jest tworzone za pomocą ON zestaw STATISTICS XML.Za każdym razem, gdy fizyczny operator osiągnięciu końca jego strumienia danych, ten licznik jest zwiększany o jeden.Operator fizycznego może osiągnąć koniec strumienia danych jego zero, jeden lub wiele razy.Podobnie jak w przypadku rebinds i przewija liczba zakończenia skanowania może być więcej niż jednym tylko wtedy, gdy podmiot gospodarczy znajduje się na wewnętrznej stronie łączyć pętli.Liczba zakończenia skanowania powinna być mniejsza niż lub równa sumie ilości rebinds i przewija.
Operatorzy fizycznie odpowiadają algorytmy wykonanie.Przykładami fizycznej operatorów skanowania/wyszukiwania indeksu, nested loop, łączyć korespondencji seryjnej, wartość mieszania łączyć/agregacja, agregacja strumienia.Operatorzy fizycznie mają kosztów związanych z nimi.Każdy krok w realizacji kwerendy lub instrukcja DML pociąga za sobą fizycznego operator.
Mapowanie operatorów logicznych i fizycznych
optymalizator kwerendy tworzy plan kwerend w postaci drzewa, składający się z operatorów logicznych.Gdy optymalizator kwerendy utworzy plan, optymalizator kwerendy wybiera najbardziej efektywne operator fizycznych dla poszczególnych operatorów logicznych.optymalizator kwerendy używa podejściu ukierunkowany na koszty w celu określenia, jaki operator fizycznej wykona operator logiczny.
Zwykle operacja logiczna może być implementowana przez wiele fizycznych podmiotów gospodarczych.Jednak w rzadkich przypadkach fizycznej operator może implementować również wiele operacji logicznych.
W tej sekcji
Ta sekcja zawiera opis następujących operatorów logicznych i fizycznych:
|