Możliwości wydajności

Ukończone

Zacznijmy od przejrzenia niektórych możliwości wydajności usługi Azure SQL w porównaniu do programu SQL Server.

Ponieważ usługi Azure SQL Database i Azure SQL Managed Instance opierają się na aparacie bazy danych programu SQL Server, większość możliwości dostępnych w programie SQL Server jest również dostępna w usłudze Azure SQL. Istnieje kilka możliwości, które mają wpływ na wydajność baz danych, które należy wziąć pod uwagę podczas wdrażania i konfigurowania usługi Azure SQL. Obejmują one maksymalne pojemności, indeksy, OLTP w pamięci, partycje, ulepszenia programu SQL Server i inteligentne możliwości wydajności.

Pojemność pamięci, procesora CPU i operacji we/wy

Wybór właściwego wdrożenia i warstwy usługi dla usługi Azure SQL Database lub SQL Managed Instance może być istotny pod względem wydajności. W drugim module przedstawiono różne opcje wdrożenia usługi Azure SQL. W ramach wdrożenia należy wziąć pod uwagę te ważne maksymalne pojemności:

  • Usługa Azure SQL Database może obsługiwać do 128 rdzeni wirtualnych, 4 TB pamięci i bazę danych o rozmiarze do 4 TB.
  • Opcja wdrożenia hiperskalowania obsługuje bazy danych o rozmiarze maksymalnie 100 TB.
  • Usługa Azure SQL Managed Instance może obsługiwać do 80 rdzeni wirtualnych, 400 GB pamięci i bazę danych o rozmiarze do 8 TB.
  • Liczba rdzeni wirtualnych i warstwa usługi również wpływają na inne pojemności zasobów, takie jak maksymalna szybkość rejestrowania transakcji, liczba operacji we/wy na sekundę, opóźnienie we/wy i pamięć.
  • Obiekty zadań systemu Windows są używane do obsługi określonych limitów zasobów, takich jak pamięć. Użyj elementu sys.dm_os_job_object, aby znaleźć rzeczywiste pojemności wdrożenia.

Indeksy

Indeksy często mają kluczowe znaczenie dla wydajności zapytań zarówno programu SQL Server, jak i usługi Azure SQL. Poniżej znajdują się istotne kwestie, które należy wziąć pod uwagę w przypadku indeksów i usługi Azure SQL:

  • Wszystkie typy indeksów, klastrowane i nieklastrowane, są obsługiwane w usłudze Azure SQL.
  • Indeksy online i z możliwością wznowienia są w pełni obsługiwane. Indeksy online i z możliwością wznowienia mogą mieć kluczowe znaczenie dla maksymalnej dostępności.
  • Indeksy magazynu kolumn są dostępne w prawie wszystkich warstwach usług. Zapoznaj się z dokumentacją pod kątem wyjątków.

Przetwarzanie OLTP danych w pamięci

Ważnym czynnikiem charakteryzującym przetwarzanie transakcji online (OLTP) jest aplikacja, która odczytuje i zapisuje dane z wieloma równoczesnymi transakcjami w czasie rzeczywistym. Przetwarzanie OLTP danych w pamięci jest możliwością dla aplikacji zależnych od opóźnienia transakcji, takich jak aplikacje, które obejmują dużą liczbę równoczesnych użytkowników modyfikujących dane. Poniżej przedstawiono ważne kwestie związane z przetwarzaniem OLTP danych w pamięci i usługą Azure SQL:

  • Tabele zoptymalizowane pod kątem pamięci są dostępne tylko w warstwach Krytyczne dla działania firmy.
  • Grupa FILEGROUP zoptymalizowana pod kątem pamięci jest wstępnie tworzona w usługach Azure SQL Database i SQL Managed Instance podczas tworzenia bazy danych (nawet w warstwach ogólnego przeznaczenia).
  • Ilość pamięci dla tabel zoptymalizowanych pod kątem pamięci jest procentem limitu pamięci zależnej od rdzeni wirtualnych.

Partycje

W programie SQL Server często używasz partycji dla tabel z dużą liczbą wierszy, aby zwiększyć wydajność przez dzielenie danych podrzędnych według kolumny w tabeli. Korzystając z partycji w usłudze Azure SQL, należy pamiętać o następujących kwestiach:

  • Partycje są obsługiwane przez usługi Azure SQL Database i SQL Managed Instance.
  • Grupy plików można używać tylko z partycjami w usłudze SQL Managed Instance.

Najnowsze ulepszenia wydajności programu SQL Server

Wiele funkcji wydajności wprowadzonych od programu SQL Server 2019, takich jak inteligentne przetwarzanie zapytań (IQP), jest również dostępnych w usługach Azure SQL Database i Azure SQL Managed Instance. Istnieją jednak pewne wyjątki. Na przykład tempdb optymalizacja metadanych nie jest jeszcze dostępna dla usługi Azure SQL. Aby uzyskać ostateczną listę obsługi funkcji IQP, zapoznaj się z tematem Inteligentne funkcje przetwarzania zapytań.

Inteligentna wydajność

Funkcje inteligentnej wydajności w usłudze Azure SQL obejmują inteligentne przetwarzanie zapytań, automatyczną korektę planu i automatyczne dostrajanie (w tym indeksy). Więcej informacji na temat tych funkcji znajdziesz w kolejnej lekcji.