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

PODGLĄD:Rozszerzenie SentryOne Plan Explorer dla Azure Data Studio

Zaktualizowano 15 sierpnia 2019 r. w wersji 0.9.6.

W zeszłym roku spotkałem się z jednym z moich zespołów programistów – nazywają siebie Injektorami SQL – aby porozmawiać o możliwości replikacji funkcjonalności SentryOne Plan Explorer w Azure Data Studio. Po krótkiej dyskusji przedstawiliśmy koncepcję zespołowi kierowniczemu i uruchomiliśmy plan.

Były pewne komplikacje, jak możesz sobie wyobrazić; Plan Explorer jest napisany przy użyciu technologii desktopowych, a ADS to zupełnie nowy świat. Musieliśmy przekonwertować cały nasz kod .NET Framework na .NET Core, zmienić nasz kod interfejsu użytkownika na Node i React oraz ponownie przepracować całą implementację diagramu planu. Całą historię zachowam na kolejny post, ponieważ po drodze wydarzyło się wiele zabawnych rzeczy i otrzymaliśmy dużą pomoc od wspaniałych ludzi z Microsoftu – Karla Burtrama, Alana Yu, Alana Ren, Charlesa Gagnona i Vicky Harp, aby wymienić tylko kilka. Na razie chcę skupić się na tym, jak dostaniesz podgląd, co jest w nim do tej pory (w tym kilka zrzutów ekranu) i znane problemy.

Jak to zdobyć

Aby uzyskać dostęp do rozszerzenia Plan Explorer, musisz utworzyć bezpłatne konto SentryOne Cloud i wyrazić zgodę na naszą umowę EULA. Konto zapewnia dostęp do naszego forum pomocy technicznej, a my możemy informować Cię na bieżąco o nadchodzących wydaniach i nowych funkcjach. Po utworzeniu konta przejdź do extensions.sentryone.com, gdzie powinieneś zobaczyć następujący link, aby pobrać rozszerzenie:

W ten sposób otrzymasz plik VSIX, który trzeba będzie „załadować z boku” do Azure Data Studio (Microsoft nie obsługuje pełnego hostingu rozszerzeń innych firm w ADS Marketplace, tak jak w przypadku VS Code).

Najpierw upewnij się, że spełniasz nasze wymagania:

  • Azure Data Studio 1.9.0 lub nowszy (post z ogłoszeniem w lipcu)
  • .NET Core Runtime 2.1 lub nowszy (Windows | macOS | Linux)
  • Łączenie z SQL Server 2012 lub nowszym albo Azure SQL Database

I zalecana konfiguracja systemu:

  • Dwa lub więcej rdzeni
  • 8 GB lub więcej pamięci
  • Systemy operacyjne:
    • Windows (8.1 / Server 2012 R2 lub lepszy)
    • macOS (10.13 lub nowszy)
    • RedHat (7,6 lub lepszy)
    • SuSE (12.0 lub lepsza)
    • Ubuntu (18.04 lub nowszy)

Następnie, aby zainstalować rozszerzenie:

  • Otwórz Azure Data Studio.
  • Wybierz Plik> Zainstaluj rozszerzenie z pakietu VSIX . Nie możesz dwukrotnie kliknąć pliku VSIX.
  • Zlokalizuj pobrany plik SentryOne Plan Explorer VSIX i kliknij Zainstaluj .
  • O ile wcześniej go nie odrzuciłeś, musisz odpowiedzieć „tak” na monit dotyczący zaufania rozszerzeniom stron trzecich:

    Jeśli nie masz wystarczająco nowej wersji usługi Azure Data Studio (lub używasz kompilacji Insiders ze zmianami, których jeszcze nie przetestowaliśmy), niektóre funkcje mogą nie działać zgodnie z oczekiwaniami.

    Jeśli nie masz wystarczająco nowej wersji środowiska wykonawczego .NET Core (lub nie jest ono uruchomione), po pomyślnym zakończeniu instalacji pojawi się następujący komunikat o błędzie:

Co w tym jest

Podobnie jak aplikacja komputerowa, rozszerzenie Plan Explorer zostało zaprojektowane w celu zapewnienia bogatszych graficznych planów wykonania zapytań w czasie rzeczywistym dotyczących SQL Server. Opiera się na skromnym podzbiorze funkcjonalności; zaczęliśmy od samego diagramu planu, siatki podstawowych instrukcji, podpowiedzi i dostępu do XML (aby można było otworzyć plan w innych narzędziach). Z czasem dodamy więcej funkcji do rozszerzenia, aby spróbować zbliżyć się do pełnej zgodności z klientem komputerowym.

Aby włączyć lub wyłączyć rozszerzenie

  • Kliknij Eksplorator planów SentryOne element na pasku stanu:

  • Lub naciśnij Shift+Ctrl /⌘+P i znajdź Przełącz Eksplorator planów SentryOne :

  • Lub naciśnij Shift+Ctrl /⌘+F5 .

Aby zebrać plan wykonania

  • Upewnij się, że rozszerzenie jest włączone.
  • W nowym oknie zapytania nawiąż połączenie z serwerem i napisz lub wklej zapytanie.
  • Dla Szacunkowego planu, użyj Wyjaśnij przycisk na pasku narzędzi.
  • Dla rzeczywistego plan, użyj Ctrl /⌘+M .
  • Otworzy się nowy dokument najwyższego poziomu (zatytułowany Eksplorator planów ) wraz z siatką oświadczeń, jeden wiersz na każde oświadczenie generujące plan:

      Siatka oświadczeń

    • Aby wyświetlić podstawowy kod XML planu, kliknij Wyświetl XML .
    • Aby wyświetlić diagram planu dla dowolnego wyciągu, kliknij Wyświetl plan .
    • Diagram planu z domyślnym motywem świetlnym

      Diagram planu z motywem Solarized Dark

    • Aby zobaczyć skróconą podpowiedź dla operatora, najedź na niego. Aby uzyskać rozszerzoną wersję, która zawiera więcej informacji i "kije" po prawej stronie panelu, kliknij operator:
    • Skondensowane i rozszerzone podpowiedzi

    • Aby zmienić dowolne właściwości diagramu, takie jak poziom powiększenia, przełączanie między planami rzeczywistymi i szacowanymi, pokazywanie kosztów tylko według we/wy lub procesora lub zmiana szerokości linii, które mają być renderowane według liczby wierszy lub rozmiaru danych, w prawo kliknij w dowolnym miejscu na diagramie:
    • Menu kontekstowe opcji diagramu

    • W przypadku braku zalecenia dotyczącego indeksu w podpowiedzi pojawi się ostrzeżenie dla operatora węzła głównego, a opcja menu kontekstowego po kliknięciu prawym przyciskiem myszy będzie dostępna w dowolnym miejscu na diagramie (co otworzy skrypt brakujących indeksów w nowym, odłączonym oknie zapytań najwyższego poziomu):

      Ostrzeżenie o braku podpowiedzi indeksu i opcja menu kontekstowego

      Brak skryptu indeksu

Nowość w wersji 0.9.6 – 15 sierpnia 2019

  • Dodano opcję menu kontekstowego do przełączania szerokości linii między liczbą wierszy a rozmiarem danych
  • Dodano opcję menu kontekstowego, aby pokazać brakujące rekomendacje indeksu w nowym oknie zapytania
  • Zmieniono domyślny port API z 5000 na 5042, aby zmniejszyć ryzyko konfliktu
  • Dodano ustawienie umożliwiające dostosowanie numeru portu lokalnego w przypadku konfliktu:

  • Przeniesiono przełącznik włączania/wyłączania rozszerzenia do paska stanu (dzięki za sugestię, Drew Skwiers-Koballa!)
  • Dodatkowa diagnostyka w panelu Wyjście ułatwiająca rozwiązywanie problemów:

  • Zaktualizowano kilka ikon operatora (stare po lewej, nowe po prawej):Assert

    ClusteredIndexUsuń

    Scalanie indeksu klastrowego

    ClusteredIndex Update

    ColumnstoreIndexUsuń

    Usunąć

    Usunięty skan

    FetchQuery

    Sprawdzanie referencji klucza obcego

    Indeks Usuń

    Aktualizacja indeksu

    Wstawiony skan

    KeyLookup

    Zapytanie o populację

    Zdalne usuwanie

    Zapytanie zdalne

    RIDLookup

    Sekwencja

    Przełącznik

    WindowAgregate

    Zwróć uwagę, że zmiany ikon wyszukiwania kluczy i identyfikatorów RID miały już miejsce w programie Plan Explorer 19.0.1 (wyjaśnienie tutaj); reszta tych zmian pojawi się wkrótce w Eksploratorze planów.

Znane problemy

  • Gdy rozszerzenie Plan Explorer jest włączone, doświadczysz również natywnego Explain funkcjonalność zapewniana przez Azure Data Studio (Dave Bland wyjaśnia tę funkcjonalność tutaj).
  • W przypadku rzeczywistych planów jedynymi metrykami środowiska uruchomieniowego dostępnymi w siatkach są czas trwania i procesor (biorąc pod uwagę wystarczająco nowoczesną wersję programu SQL Server). Inne dane pojawią się w przyszłych wydaniach, zaczynając od odczytów i % kosztów.
  • Azure Data Studio obecnie obcina dane wyjściowe XML planu do 2 MB (zobacz problem #6299). Dlatego w przypadku większych planów i/lub większych partii możemy nie być w stanie wyświetlić wszystkich planów. Jest to bardziej prawdopodobne, gdy używasz funkcji Wyjaśnij do generowania szacunkowych planów (więc po prostu powiedz „nie” szacunkowym planom ).
  • Nie mamy dostępu do menu Plik, więc nie możemy otwierać ani zapisywać planów i możemy otworzyć tylko jedno okno dokumentu o nazwie Eksplorator planów – co oznacza, że ​​przynajmniej na razie możesz pokazać tylko jeden diagram planu na raz.
  • Brakujące indeksy , opcjach szerokości linii , a funkcja zwijania poddrzewa jest niedostępna w podglądzie. Nie ma również opcji układu, ale możesz powiększać za pomocą kółka myszy lub szczypania gładzika, a także przesuwać, przesuwając dwoma palcami po gładziku.
  • Gdy Azure Data Studio otworzy się z dokumentami odzyskanymi z poprzedniej sesji, włączenie rozszerzenia Plan Explorer może nie mieć zastosowania do tych okien z powodu problemu z wyliczaniem dokumentów w tym stanie. Dopóki Microsoft nie wyda poprawki, wyłączenie i ponowne włączenie Eksploratora planów powinno wystarczyć.
  • Obsługa motywów jest obecnie eksperymentalna:
    • Nie wszystkie kolory tła będą się pięknie renderować, a wszystkie linki są niebieskie bez względu na wszystko.
    • Pracujemy nad alternatywnymi ikonami przeznaczonymi dla ciemnych motywów.
    • Jeśli zmienisz motyw kolorystyczny po renderowaniu planu, obecnie nie możemy uchwycić wydarzenia. Wejdź w interakcję z diagramem (np. kliknięcie prawym przyciskiem myszy), aby zmusić go do „nadrobienia zaległości”.

Uzyskaj więcej informacji; przekaż opinię

  • Strona produktu
  • Oficjalna dokumentacja produktu
  • Forum eksploratora planów SentryOne / dostrajanie zapytań
  • Powiadomienie o wydaniu w lipcu od zespołu Azure Data Studio
  • Zawsze chętnie odpowiadam na pytania lub przyjmuje opinie pod adresem [email protected]

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dedykowana procedura składowana umożliwiająca uzyskanie najnowszego stanu kopii zapasowych bazy danych

  2. Kontrola stanu Exadata za pomocą narzędzia Exachk

  3. jak wykonać procedurę składowaną w programie SQL Developer?

  4. Czym są wyzwalacze w SQL i jak je zaimplementować?

  5. Jaka jest średnia pensja programisty SQL?