Database
 sql >> Baza danych >  >> RDS >> Database

Więcej ulepszeń showplanu? Tak proszę!

Ponieważ wydaje się, że Microsoft jest w nastroju do inwestowania, biorąc pod uwagę ich niedawne dodanie Rzeczywistych odczytanych wierszy (zobacz ten post od Kendry Little po więcej szczegółów), pomyślałem, że zwrócę uwagę na kilka innych ulepszeń, które moim zdaniem byłyby świetnymi pomysłami na poprawę życia modułów dostrajających zapytania.

Pierwsza to ta, którą opublikowałem niedawno, prosząc, aby XML ujawnił interpretowany typ danych parametru (niezależnie od tego, czy pochodzi on ze zmiennej, parametru wejściowego, czy z literału):

  • Połącz #2088233:Dodaj typy danych parametrów do showplanu

Innym przykładem jest Hugo Kornelis, który prosi o dokładniejsze zliczanie wierszy w operatorach łączenia w pętlę (tło w Connect #491342). Paul White i Erland Sommarskog zgadzają się:

  • Połącz #743480:Usuń niespójność w wierszach rzeczywistych i szacunkowych w planach wykonania

Mówiąc o Paulu White, zaleca on, aby unikatowe filtrowane indeksy rzeczywiście były rozpoznawane przez optymalizator jako unikalne; obecnie można tworzyć nieoptymalne plany (ale zostało to odrzucone bez komentarza):

  • Połącz #782213:Rozpoznaj unikalne filtrowane indeksy jako unikalne

Paul zaleca również rozróżnienie w planie, gdy funkcja GROUP BY została uproszczona (również zamknięta, ponieważ nie zostanie naprawiona, bez wielu dalszych informacji):

  • Połącz #730458:Ulepsz plan pokazu, aby odróżnić agregaty skalarne i wektorowe

(Paul ma również cztery aktywne błędy, o których powinieneś przeczytać, IMHO.)

Wreszcie Adam Machani skarży się na wszechobecny problem polegający na tym, że kliknięcie showplan XML w Management Studio daje surowy XML zamiast planu graficznego:

  • Połącz #652855:Prawidłowy kod XML planu pokazu nie generuje automatycznie graficznego planu pokazu

Jestem pewien, że masz inne pomysły na ulepszenia showplanu, w tym elementy Connect, których tutaj przegapiłem. Mam jednak nadzieję, że znajdziecie czas na przeczytanie, zrozumienie, zagłosowanie i skomentowanie tych kwestii – chociaż może się to nie podobać, jest to warte zachodu , nawet jeśli pozycja jest obecnie zamknięta.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL MAX() dla początkujących

  2. SQL FLOAT:3 punkty, które pomogą Ci uniknąć dziwnych błędów matematycznych

  3. 3 najważniejsze wskazówki, które musisz znać, aby szybciej pisać widoki SQL

  4. Liczba SQL

  5. Porównanie typowych wzorców infrastruktury baz danych