Konfigurowanie i utrzymywanie wydajności

Ukończone

Zrozumienie możliwości usługi Azure SQL jest istotne w przypadku zapewniania spójnej wydajności. Ważne jest również poznanie dostępnych opcji i ograniczeń w celu konfigurowania w usługach Azure SQL Managed Instance i Azure SQL Database, które mogą mieć wpływ na wydajność. Do takich właściwości należą:

  • Tematy bazy tempdb danych
  • Konfigurowanie baz danych
  • Konfigurowanie plików i grup plików
  • Konfigurowanie maksymalnego stopnia równoległości
  • Korzystanie z zarządcy zasobów
  • Utrzymywanie indeksów i statystyk

Tempdb

Systemowa tempdb baza danych jest ważnym zasobem udostępnionym używanym przez aplikacje. Zapewnienie odpowiedniej konfiguracji może mieć wpływ na możliwość zapewnienia spójnej tempdb wydajności. tempdb Używasz w ten sam sposób zarówno dla programu SQL Server, jak i usługi Azure SQL. Należy jednak pamiętać, że możliwość konfigurowania tempdb jest inna, w tym umieszczanie plików, liczba i rozmiar plików oraz tempdb opcje konfiguracji.

Pliki tempdb bazy danych są zawsze automatycznie przechowywane na lokalnych dyskach SSD, więc wydajność we/wy nie powinna być problemem.

Specjaliści ds. programu SQL Server często używają więcej niż jednego pliku bazy danych do partycjonowania alokacji tabel tempdb . W przypadku usługi Azure SQL Database liczba plików jest skalowana przy użyciu liczby rdzeni wirtualnych (na przykład dwóch rdzeni wirtualnych równych czterem plikom) z maksymalnie 16. Liczba plików nie można skonfigurować za pomocą języka T-SQL w usłudze tempdb, ale można ją skonfigurować, zmieniając opcję wdrożenia. Maksymalny rozmiar tempdb jest skalowany na liczbę rdzeni wirtualnych. Otrzymujesz 12 plików wraz z usługą SQL Managed Instance, niezależnie od rdzeni wirtualnych.

Opcja MIXED_PAGE_ALLOCATION bazy danych jest ustawiona na WYŁĄCZONE i AUTOGROW_ALL_FILES jest ustawiona na WARTOŚĆ WŁĄCZONE. Nie można tego skonfigurować, ale tak jak w przypadku programu SQL Server, są to zalecane wartości domyślne.

tempdb Funkcja optymalizacji metadanych wprowadzona w programie SQL Server 2019, która może złagodzić duże opóźnienia, nie jest obecnie dostępna w usłudze Azure SQL Database ani w usłudze Azure SQL Managed Instance.

Konfiguracja bazy danych

Najczęściej konfiguracja bazy danych jest wykonywana przy użyciu instrukcji ALTER DATABASE i ALTER DATABASE SCOPED CONFIGURATION w języku T-SQL. Na potrzeby usługi Azure SQL jest dostępnych wiele opcji konfiguracji dotyczących wydajności. Zapoznaj się z dokumentacją języka T-SQL ALTER DATABASE i ALTER DATABASE SCOPED CONFIGURATION, aby uzyskać różnice między programem SQL Server, usługą Azure SQL Database i usługą Azure SQL Managed Instance.

W przypadku wydajności jedną z opcji, którą nie można zmienić, jest model odzyskiwania bazy danych. Wartością domyślną jest pełne odzyskiwanie. Dzięki temu baza danych może spełniać wymogi umów dotyczących poziomu usług dla platformy Azure (umowy SLA). W związku z tym minimalne rejestrowanie na potrzeby operacji zbiorczych nie jest obsługiwane. Minimalne rejestrowanie dla operacji zbiorczych jest obsługiwane w przypadku programu tempdb.

Pliki i grupy plików

Specjaliści ds. programu SQL Server często używają plików i grup plików, aby zwiększyć wydajność operacji we/wy przez fizyczne umieszczanie plików. Usługa Azure SQL nie umożliwia użytkownikom umieszczania plików w określonych systemach dysków. Usługa Azure SQL ma jednak zobowiązania dotyczące zasobów na potrzeby wydajności operacji we/wy w odniesieniu do stawek, liczby operacji we/wy na sekundę i opóźnień. W ten sposób ograniczenie użytkownikowi fizycznego umieszczania plików może stanowić korzyść.

Usługa Azure SQL Database ma tylko jeden plik bazy danych (warstwa Hiperskala zwykle ma ich kilka), a maksymalny rozmiar jest konfigurowany za pomocą interfejsów platformy Azure. Nie ma funkcji tworzenia dodatkowych plików.

Usługa Azure SQL Managed Instance obsługuje dodawanie plików bazy danych i konfigurowanie rozmiarów, ale nie fizyczne umieszczanie plików. Aby zwiększyć wydajność operacji we/wy, możesz użyć liczby plików i rozmiarów plików dla usługi SQL Managed Instance. Ponadto grupy plików zdefiniowane przez użytkownika są obsługiwane w przypadku usługi SQL Managed Instance na potrzeby zarządzania.

Konfiguracja MAXDOP

Maksymalny stopień równoległości (MAXDOP) może mieć wpływ na wydajność poszczególnych zapytań. Program SQL Server i usługa Azure SQL obsługują opcję MAXDOP w ten sam sposób. Opcję MAXDOP można skonfigurować w usłudze Azure SQL podobnie jak w programie SQL Server przy użyciu następujących technik:

  • W przypadku usługi Azure SQL w celu skonfigurowania opcji MAXDOP jest obsługiwana instrukcja ALTER DATABASE SCOPED CONFIGURATION.
  • W przypadku usługi SQL Managed Instance na potrzeby „maksymalnego stopnia równoległości” jest obsługiwana procedura składowana sp_configure.
  • Wskazówki zapytania opcji MAXDOP są w pełni obsługiwane.
  • W przypadku usługi SQL Managed Instance jest obsługiwane konfigurowanie opcji MAXDOP przy użyciu zarządcy zasobów.

Zarządca zasobów

Zarządca zasobów jest funkcją w programie SQL Server, która może służyć do kontrolowania użycia zasobów na potrzeby obciążeń przy użyciu operacji we/wy, procesora CPU i pamięci. Należy pamiętać, że na potrzeby grup obciążeń zdefiniowanych przez użytkownika, zarządca zasobów jest obsługiwany dla usługi SQL Managed Instance, ale nie jest obsługiwany w przypadku usługi Azure SQL Database.

Konserwacja indeksu

Tworzenie i konserwacja indeksu dla usługi Azure SQL jest dokładnie taka sama jak w przypadku programu SQL Server. Na przykład tworzenie, odbudowywanie i reorganizacja indeksów są w pełni obsługiwane podobnie jak w przypadku programu SQL Server. Obejmuje to indeksy online i z możliwością wznowienia.

Konserwacja statystyk

Program SQL Server i usługa Azure SQL obsługują statystyki w ten sam sposób. Automatyczne opcje statystyk dla baz danych są dostępne w obu przypadkach.

Teraz, gdy znasz już niektóre opcje konfiguracji i konserwacji wydajności usługi Azure SQL, przed przejściem do następnej lekcji ukończ następujący test wiedzy.

Test wiedzy

1.

Za pomocą której metody można skonfigurować liczbę plików bazy danych tempdb na potrzeby usługi Azure SQL Database?

2.

Za pomocą której metody można skonfigurować wydajność operacji we/wy na potrzeby usługi Azure SQL Database?

3.

Jak konserwować indeksy przy użyciu usługi Azure SQL?