Udostępnij za pośrednictwem


Opis planu wymuszanie

Wskazówka dotycząca kwerendy za pomocą planu można wymusić optymalizator kwerendy, aby użyć planu kwerendy dla kwerendy.Wskazówki dotyczącej kwerendy za pomocą planu działania akceptując planu kwerend, który chcesz używać jako argument w formacie XML.PLANOWANE jest użycie może służyć do kwerendy, których plany powodować powolne czasów wykonania, ale dla którego znany lepiej planów istnieje.Typowym scenariuszem może obejmować kwerendy wykonywane również w starszej wersja programu SQL Server, ale niska w uaktualnionej wersja, czy jest to uaktualnienie dodatku usługa pack lub uaktualnienia wersja pełnej.Większość z czas, uaktualnienia prowadzi do równą lub lepszą wydajność w większości wykonanie kwerendy czass; jednak może być niektóre wyjątki.Wskazówka dotycząca kwerendy planu wykorzystania jest dostępny i może obsługiwać tych przypadków, gdy plan kwerend, wybranego przez optymalizator kwerendy w starszej wersja produktu jest preferowane wybrana po uaktualnieniu.

Wskazówka dotycząca kwerendy planu wykorzystania mogą być używane z prowadnicami plan podczas rozwiązywania problemów z niską wydajność kwerend w wdrożonych aplikacji.Plan guides są używane do zastosowania wskazówki kwerendy do kwerendy nie może lub nie chcesz zmieniać bezpośrednio aplikacji.Aby uzyskać więcej informacji na temat planów, zobacz Optymalizacja kwerend w wdrożonych aplikacji za pomocą prowadnic Plan.Bardziej szczegółowe scenariuszach, pokazujące, jak kwerendy wskazówkę dotyczącą stosowania planu mogą być stosowane w plan guides, zobacz Plan wymuszanie scenariusza: Utworzenia planu określająca planu kwerend i Plan wymuszanie scenariusza: Utworzenia planu wymusić Plan uzyskane z nowych kwerend.

Wymuszanie plan może służyć do większości typów kwerend.Obejmują one kwerend tabel, indeksy klastrowane i nieklastrowanym, widoki indeksowane i tabele podzielonym na partycje i indeksy.WYKORZYSTANIE planu można określić przy użyciu język edycji danych (DML) sprawozdania WSTAWIANIA, aktualizacji, scalanie lub usuwania.Należy zauważyć, że zmiany schemat bazy danych, takich jak dodanie lub usunięcie indeksu, mogą unieważnić plan określony w wskazówkę dotyczącą stosowania planu.Po określeniu planu użycia bezpośrednio w kwerendzie nieprawidłowy plan powoduje kwerendy.Po określeniu przewodnik planu wykorzystania w przewodniku plan nieprawidłowy plan nie spowoduje kwerendy; plan jest kompilowany bez użycia wskazówka i nie może być najlepszym wyborem.Wskazówka użyć przewodnik planu używany wewnątrz przewodnik planu, można użyć sys.fn_validate_plan_guide funkcja, aby zweryfikować prawidłowość przewodnik planu.Na podstawie wyniki funkcja, może podjąć decyzję o upuszczeniu przewodnik planu i Dostrojenie kwerendy lub zmodyfikować projekt bazy danych.Na przykład, może ponownie utworzyć indeks, określone w przewodnik planu.

Podobnie jak inne plany kwerend są buforowane wygenerowany PLAN wykorzystania wskazówkę dotyczącą kwerendy planów kwerend.

Plan wymuszanie ograniczenia

Wymuszanie plan ogranicza kwerendę do planu wykonania pojedynczego, statyczne.Wymuszanie plan eliminuje możliwość adaptacji do zmiany rozmiarów danych i dystrybucji, nowe indeksy i inne zmienne optymalizator kwerendy.Dlatego plan wymuszanie, jeżeli używane, może spowodować problemy z wydajnością.Wymuszanie plan powinien być używany tylko po pełni poznawanie innych opcji poprawia wydajność kwerendy, takie jak używanie świeżego i dokładnych statystyk i zoptymalizowana indeksy.Wymuszanie plan powinny być używane oszczędnie, tylko i wyłącznie przez doświadczonych bazy danych Administratorzy i deweloperzy którzy wiedzą na temat zagadnień wydajności i zmieniające się środowisko ich bazy danych i aplikacji.

Używając kwerendy wskazówkę dotyczącą stosowania przewodnik planu do wpływ kompilacji kwerendy w rozmieszczonej aplikacji, wskazówka powinny być używane wewnątrz przewodnik planu zamiast osadzone bezpośrednio w aplikacji.W ten sposób można rozwiązania następujących problemów:

  • Można zmienić lub usunąć ją bez modyfikowania lub ponownego kompilowania aplikacji.W ograniczonych przypadkach użycie PLAN hint stosowanego w jednej wersja SQL Server nie może być stosowane w przyszłych usługa pack lub wersja wydania.Dlatego trzeba zmienić lub usunąć wskazówkę dotyczącą stosowania planu po wdrożeniu aplikacji.

  • Można uniknąć za pomocą dużych wskazówka bezpośrednio w kwerendzie.Ułatwia to kwerendy do odczytu.

    Ważna informacjaWażne:

    Tworząc przewodnik planu, korzystającej z planu wykorzystania, należy sprawdzić podczas testowania czy kwerendy plan, którego chcesz wymusić zazwyczaj jest złożone z żądaniem kursor.Plany kwerend dla kwerend opartych na kursor różnią się od tych kwerend noncursor.Dlatego do utworzenia przewodnik planu Określanie wskazówkę przewodnik planu wykorzystania dotyczą kwerendy, złożone z żądaniem kursor, przewodnik planu należy określić plan kursor.Aby uzyskać więcej informacji, zobacz Za pomocą planu użycia kwerendy wskazówkę dotyczącą na kwerendach z kursorów.

Wymuszanie plan nie jest obsługiwana przez następujące typy kwerend: