Udostępnij za pośrednictwem


Automatyczne dostrajanie w usługach Azure SQL Database i Azure SQL Managed Instance

Dotyczy: Azure SQL Database Azure SQL Managed Instance

Automatyczne dostrajanie usług Azure SQL Database i Azure SQL Managed Instance zapewnia szczytową wydajność i stabilne obciążenia dzięki ciągłego dostrajania wydajności opartego na sztucznej inteligencji i uczeniu maszynowym.

Automatyczne dostrajanie to w pełni zarządzana, inteligentna usługa wydajności, która używa wbudowanej inteligencji do ciągłego monitorowania zapytań wykonywanych na bazie danych i automatycznie zwiększa ich wydajność. Jest to osiągane przez dynamiczne dostosowywanie bazy danych do zmieniających się obciążeń i stosowanie rekomendacji dotyczących dostrajania. Automatyczne dostrajanie uczy się za pośrednictwem AI na płaszczyźnie poziomej ze wszystkich baz danych na platformie Azure i dynamicznie ulepsza swoje akcje dostrajania. Im dłużej baza danych pracuje z automatycznym dostrajaniem, tym lepiej działa.

Automatyczne dostrajanie usług Azure SQL Database i Azure SQL Managed Instance może być jedną z najbardziej wpływających funkcji, które można włączyć w celu zapewnienia stabilnych i szczytowych obciążeń baz danych.

Automatyczne dostrajanie usługi Azure SQL współudzieli podstawową logikę z funkcją automatycznego dostrajania programu SQL Server w aucie bazy danych. Aby uzyskać dodatkowe informacje techniczne na temat wbudowanego mechanizmu analizy, zobacz Automatyczne dostrajanie programu SQL Server.

Co może zrobić automatyczne dostrajanie

  • Automatyczne dostrajanie wydajności baz danych
  • Automatyczna weryfikacja zysków wydajności
  • Automatyczne wycofywanie i samodzielna korekta
  • Historia dostrajania
  • Dostrajanie skryptów akcji Transact-SQL (T-SQL) na potrzeby wdrożeń ręcznych
  • Skalowanie w poziomie możliwości na setki tysięcy baz danych
  • Pozytywny wpływ na zasoby devOps i całkowity koszt posiadania

Bezpieczne, niezawodne i sprawdzone

Operacje dostrajania stosowane do baz danych są w pełni bezpieczne dla wydajności najbardziej intensywnych obciążeń. System został zaprojektowany z ostrożnością, aby nie zakłócać obciążeń użytkowników. Rekomendacje dotyczące automatycznego dostrajania są stosowane tylko w przypadku niskiego wykorzystania procesora CPU, operacji we/wy danych i operacji we/wy dziennika. System może również tymczasowo wyłączyć operacje automatycznego dostrajania w celu ochrony wydajności obciążenia. W takim przypadku komunikat "Wyłączony przez system" będzie wyświetlany w witrynie Azure Portal i w sys.database_automatic_tuning_options widoku DMV. Automatyczne dostrajanie zostało zaprojektowane w celu nadania obciążeniom użytkowników najwyższego priorytetu zasobów.

Mechanizmy automatycznego dostrajania są dojrzałe i zostały udoskonalone na kilka milionów baz danych działających na platformie Azure. Zastosowane operacje automatycznego dostrajania są weryfikowane automatycznie, aby upewnić się, że istnieje znaczna pozytywna poprawa wydajności obciążenia. Jeśli nie ma żadnych ulepszeń lub w mało prawdopodobnych regresjach wydajności przypadków, zmiany wprowadzone przez automatyczne dostrajanie są natychmiast przywracane. Dzięki zarejestrowanej historii dostrajania istnieje wyraźny ślad ulepszeń dostrajania wprowadzonych do każdej bazy danych w usłudze Azure SQL Database.

Jak działa automatyczne dostrajanie

Włączanie automatycznego dostrajania

Opcje automatycznego dostrajania

Opcje automatycznego dostrajania dostępne w usługach Azure SQL Database i Azure SQL Managed Instance to:

Opcja automatycznego dostrajania opis Obsługa pojedynczej bazy danych i bazy danych w puli Obsługa bazy danych wystąpień
TWORZENIE INDEKSU Identyfikuje indeksy, które mogą poprawić wydajność obciążenia, tworzy indeksy i automatycznie sprawdza, czy wydajność zapytań uległa poprawie. Podczas rekomendowania nowego indeksu system uwzględnia miejsce dostępne w bazie danych. Jeśli szacuje się, że dodanie indeksu zwiększa wykorzystanie miejsca do ponad 90% w kierunku maksymalnego rozmiaru danych, rekomendacja indeksu nie jest generowana. Po zidentyfikowaniu przez system okresu niskiego wykorzystania i rozpoczęciu tworzenia indeksu nie zostanie wstrzymana ani anulowana, nawet jeśli użycie zasobów nieoczekiwanie wzrośnie. Jeśli tworzenie indeksu zakończy się niepowodzeniem, zostanie ponowiona w przyszłym okresie niskiego wykorzystania. Zalecenia dotyczące indeksu nie są udostępniane dla tabel, w których indeks klastrowany lub sterta jest większa niż 10 GB. Tak Nie.
DROP INDEX Spada nieużywane (w ciągu ostatnich 90 dni) i zduplikowane indeksy. Unikatowe indeksy, w tym indeksy obsługujące klucz podstawowy i unikatowe ograniczenia, nigdy nie są usuwane. Ta opcja może zostać automatycznie wyłączona, gdy zapytania z wskazówkami indeksu znajdują się w obciążeniu lub gdy obciążenie wykonuje przełączanie partycji. W warstwach usługi Premium i Krytyczne dla działania firmy ta opcja nigdy nie spadnie nieużywanych indeksów, ale w razie potrzeby spadnie zduplikowane indeksy. Tak Nie.
FORCE LAST GOOD PLAN (automatyczna korekta planu) Identyfikuje zapytania usługi Azure SQL przy użyciu planu wykonania, który jest wolniejszy niż poprzedni dobry plan, i wymusza użycie ostatniego znanego dobrego planu zamiast planu z regresją. Tak Tak

Automatyczne dostrajanie dla usługi SQL Database

Automatyczne dostrajanie usługi Azure SQL Database używa zaleceń CREATE INDEX, DROP INDEX i FORCE_LAST_GOOD_PLAN doradcy bazy danych w celu zoptymalizowania wydajności bazy danych. Aby uzyskać więcej informacji, zobacz Zalecenia usługi Database advisor w witrynie Azure Portal, w programie PowerShell i w interfejsie API REST.

Możesz ręcznie zastosować zalecenia dotyczące dostrajania w witrynie Azure Portal lub zezwolić na automatyczne dostrajanie autonomiczne stosowanie zaleceń dotyczących dostrajania. Korzyści wynikające z autonomicznego stosowania zaleceń dotyczących dostrajania systemu polegają na tym, że automatycznie sprawdza, czy istnieje pozytywny wzrost wydajności obciążenia, a jeśli nie wykryto znaczącej poprawy wydajności lub jeśli wystąpi regresja wydajności, system automatycznie przywraca wprowadzone zmiany. W zależności od częstotliwości wykonywania zapytania proces weryfikacji może potrwać od 30 minut do 72 godzin, co trwa dłużej w przypadku rzadziej wykonywanych zapytań. Jeśli w dowolnym momencie podczas walidacji zostanie wykryta regresja, zmiany zostaną natychmiast przywrócone.

Ważne

Jeśli stosujesz zalecenia dotyczące dostrajania za pomocą języka T-SQL, automatyczne mechanizmy sprawdzania poprawności wydajności i odwrócenia są niedostępne. Zalecenia stosowane w taki sposób pozostaną aktywne i będą wyświetlane na liście zaleceń dotyczących dostrajania przez 24–48 godzin przed automatycznym wycofaniem ich przez system. Jeśli chcesz wcześniej usunąć zalecenie, możesz go odrzucić w witrynie Azure Portal.

Opcje automatycznego dostrajania można włączać lub wyłączać niezależnie dla każdej bazy danych lub można je skonfigurować na poziomie serwera i stosować w każdej bazie danych, która dziedziczy ustawienia z serwera. Domyślnie nowe serwery dziedziczą ustawienia domyślne platformy Azure dla ustawień automatycznego dostrajania. Wartości domyślne platformy Azure są ustawione na FORCE_LAST_GOOD_PLAN włączone, wyłączone CREATE_INDEX i wyłączone DROP_INDEX.

Konfigurowanie opcji automatycznego dostrajania na serwerze i dziedziczenie ustawień baz danych należących do serwera nadrzędnego jest zalecaną metodą konfigurowania automatycznego dostrajania. Upraszcza zarządzanie opcjami automatycznego dostrajania dla dużej liczby baz danych.

Aby dowiedzieć się więcej o tworzeniu powiadomień e-mail dotyczących zaleceń dotyczących automatycznego dostrajania, zobacz Powiadomienia e-mail dotyczące automatycznego dostrajania.

Automatyczne dostrajanie dla usługi Azure SQL Managed Instance

Automatyczne dostrajanie usługi SQL Managed Instance obsługuje wyłącznie ustawienie FORCE LAST GOOD PLAN (WYMUSZAJ OSTATNI DOBRY PLAN). Aby uzyskać więcej informacji na temat konfigurowania opcji automatycznego dostrajania za pośrednictwem funkcji T-SQL, zobacz Automatyczne dostrajanie wprowadza automatyczną korektę planu i Automatyczna korekta planu.

Przykłady umożliwiające włączenie

Aby uzyskać więcej informacji, zobacz opcje instrukcji ALTER DATABASE.

Aby dziedziczyć konfigurację domyślną z nadrzędnego serwera logicznego, użyj następującego języka T-SQL. W witrynie Azure Portal odzwierciedla to opcję "Dziedzicz z: serwer".

ALTER DATABASE CURRENT SET AUTOMATIC_TUNING = INHERIT;

Aby włączyć opcje automatycznego dostrajania CREATE INDEX i DROP INDEX , użyj następującego języka T-SQL.

ALTER DATABASE CURRENT SET AUTOMATIC_TUNING (CREATE_INDEX = ON, DROP_INDEX = ON);

Historia automatycznego dostrajania

W przypadku usługi Azure SQL Database historia zmian wprowadzonych przez automatyczne dostrajanie jest zachowywana przez 21 dni. Można go wyświetlić w witrynie Azure Portal na stronie Zalecenia dotyczące wydajności bazy danych lub za pomocą programu PowerShell z poleceniem cmdlet Get-AzSqlDatabaseRecommendedAction . W celu dłuższego przechowywania dane historii można również przesyłać strumieniowo do kilku typów miejsc docelowych, włączając ustawienie diagnostyczne AutomaticTuning.