Podsumowanie

Ukończone

Optymalizacja wydajności w usłudze Azure SQL Database to systematyczny proces. Zaczynasz od podejmowania decyzji dotyczących infrastruktury, pracy z kontrolkami współbieżności i stosowania narzędzi diagnostycznych, aby znaleźć i rozwiązać problemy wpływające na użytkowników.

W tym module przedstawiono sposób wykonywania następujących czynności:

  • Zalecane konfiguracje baz danych: Ocena modeli zasobów vCore w porównaniu do DTU. Możesz wybrać pomiędzy warstwami serwisowymi: Ogólnego Przeznaczenia, Krytyczne dla Działania Firmy i Hiperskala, na podstawie opóźnień I/O, przechowywania i potrzeb związanych z dostępnością. Wybierz aprowizowane lub bezserwerowe zasoby obliczeniowe, aby dopasować wzorce obciążeń.
  • Zachowaj integralność danych przy użyciu poziomów izolacji: poznaj kompromis między spójnością a współbieżnością na sześciu poziomach izolacji. Użyj RCSI i zoptymalizowanego mechanizmu blokowania (obydwa domyślnie włączone w Azure SQL Database), aby zminimalizować blokady.
  • Ocena wydajności zapytań: odczyt planów wykonywania w celu identyfikowania skanów, błędów szacowania wierszy, wyszukiwania kluczy i ostrzeżeń. Wykonywanie zapytań dotyczących widoków DMV w celu znalezienia najdroższych zapytań, aktualnie uruchomionych żądań i brakujących indeksów.
  • Monitoruj i dostrajaj za pomocą magazynu zapytań: Wymuś poprzednie plany dla natychmiastowych poprawek. Stosuj wskazówki Query Store bez modyfikowania kodu aplikacji. Wizualizuj wydajność w Azure Portal z Query Performance Insight.
  • Zidentyfikuj i rozwiąż problemy z blokowaniem i zakleszczaniem; znajdź główne blokady za pomocą sys.dm_exec_requests. Przechwytywanie wykresów zakleszczeń za pomocą zdarzeń rozszerzonych. Zapobiegaj problemom ze współbieżnością, utrzymując krótkie transakcje, uzyskując dostęp do obiektów w spójnej kolejności i implementując logikę ponawiania próby dla błędu 1205.

Dowiedz się więcej