Używanie replik tylko do odczytu do odciążania obciążeń zapytań tylko do odczytu
Dotyczy: Azure SQL Database Azure SQL Managed Instance
W ramach architektury wysokiej dostępności każda pojedyncza baza danych lub elastyczna baza danych w warstwie Premium i Krytyczne dla działania firmy usługi jest automatycznie aprowizowana przy użyciu podstawowej repliki do odczytu i zapisu oraz co najmniej jednej pomocniczej repliki tylko do odczytu. Repliki pomocnicze są aprowidowane przy użyciu tego samego rozmiaru obliczeniowego co replika podstawowa. Funkcja skalowania odczytu w poziomie umożliwia odciążanie obciążeń tylko do odczytu przy użyciu pojemności obliczeniowej jednej z replik tylko do odczytu, a nie uruchamiania ich w repliki do odczytu i zapisu. Dzięki temu niektóre obciążenia tylko do odczytu mogą być odizolowane od obciążeń odczytu i zapisu i nie mają wpływu na ich wydajność. Ta funkcja jest przeznaczona dla aplikacji, które obejmują logicznie oddzielone obciążenia tylko do odczytu, takie jak analiza. W warstwach usług Premium i Krytyczne dla działania firmy aplikacje mogą uzyskać korzyści z wydajności dzięki tej dodatkowej pojemności bez dodatkowych kosztów.
Funkcja skalowania odczytu w poziomie jest również dostępna w warstwie usługi Hiperskala po dodaniu co najmniej jednej repliki pomocniczej. Pomocnicze repliki nazwane w warstwie Hiperskala zapewniają niezależne skalowanie , izolację dostępu, izolację obciążenia, obsługę różnych scenariuszy skalowania w poziomie odczytu i inne korzyści. Wiele pomocniczych replik wysokiej dostępności może służyć do równoważenia obciążenia tylko do odczytu, które wymagają więcej zasobów niż jest dostępnych w jednej pomocniczej repliki wysokiej dostępności.
Architektura wysokiej dostępności w warstwach usługi Podstawowa, Standardowa i Ogólnego przeznaczenia nie zawiera żadnych replik. Funkcja skalowania odczytu w poziomie nie jest dostępna w tych warstwach usług. Jednak w przypadku korzystania z usługi Azure SQL Database repliki geograficzne mogą zapewniać podobne funkcje w tych warstwach usług. W przypadku korzystania z usługi Azure SQL Managed Instance i grup trybu failover odbiornik grupy trybu failover może zapewnić podobne funkcje odpowiednio.
Na poniższym diagramie przedstawiono funkcję baz danych w warstwie Premium i Krytyczne dla działania firmy oraz wystąpień zarządzanych.
Funkcja skalowania odczytu w poziomie jest domyślnie włączona w nowych bazach danych Premium, Krytyczne dla działania firmy i Hiperskala.
Uwaga
Skalowanie odczytu w poziomie jest zawsze włączone w warstwie usługi Krytyczne dla działania firmy wystąpienia zarządzanego SQL oraz w przypadku baz danych w warstwie Hiperskala z co najmniej jedną repliką pomocniczą.
Jeśli parametry połączenia SQL jest skonfigurowany za pomocą ApplicationIntent=ReadOnly
programu , aplikacja jest przekierowywana do repliki tylko do odczytu tej bazy danych lub wystąpienia zarządzanego. Aby uzyskać informacje na temat używania ApplicationIntent
właściwości, zobacz Określanie intencji aplikacji.
Tylko w przypadku usługi Azure SQL Database, jeśli chcesz mieć pewność, że aplikacja łączy się z repliką podstawową niezależnie od ApplicationIntent
ustawienia w usłudze SQL parametry połączenia, musisz jawnie wyłączyć skalowanie odczytu w poziomie podczas tworzenia bazy danych lub zmiany jej konfiguracji. Jeśli na przykład uaktualnisz bazę danych z warstwy Standardowa lub Ogólnego przeznaczenia do warstwy Premium lub Krytyczne dla działania firmy i chcesz upewnić się, że wszystkie połączenia będą nadal przechodzić do repliki podstawowej, wyłącz skalowanie odczytu w poziomie. Aby uzyskać szczegółowe informacje na temat sposobu jej wyłączania, zobacz Włączanie i wyłączanie skalowania odczytu w poziomie.
Uwaga
Funkcje magazynu zapytań i profilera SQL nie są obsługiwane w replikach tylko do odczytu.
Spójność danych
Zmiany danych wprowadzone w repliki podstawowej są utrwalane w replikach tylko do odczytu synchronicznie lub asynchronicznie w zależności od typu repliki. Jednak dla wszystkich typów replik odczyty z repliki tylko do odczytu są zawsze asynchroniczne w odniesieniu do podstawowej. W ramach sesji połączonej z repliką tylko do odczytu operacje odczytu są zawsze spójne transakcyjnie. Ponieważ opóźnienie propagacji danych jest zmienne, różne repliki mogą zwracać dane w nieco różnych punktach w czasie względem podstawowego i siebie nawzajem. Jeśli replika tylko do odczytu stanie się niedostępna, a sesja zostanie ponownie połączona, może nawiązać połączenie z repliką, która znajduje się w innym momencie niż oryginalna replika. Podobnie, jeśli aplikacja zmienia dane przy użyciu sesji odczytu i zapisu w podstawowym i natychmiast odczytuje je przy użyciu sesji tylko do odczytu w repliki tylko do odczytu, możliwe, że najnowsze zmiany nie są natychmiast widoczne.
Typowe opóźnienie propagacji danych między repliką podstawową a replikami tylko do odczytu różni się w zakresie od dziesiątek milisekund do sekund jednocyfrowych. Nie ma jednak stałej górnej granicy opóźnienia propagacji danych. Warunki, takie jak wysokie wykorzystanie zasobów w repliki, mogą znacznie zwiększyć opóźnienie. Aplikacje, które wymagają gwarantowanej spójności danych między sesjami lub wymagają natychmiastowego odczytywania zatwierdzonych danych, powinny używać repliki podstawowej.
Uwaga
Opóźnienie propagacji danych obejmuje czas wymagany do wysyłania i utrwalania (jeśli dotyczy) rekordów dziennika do repliki pomocniczej. Obejmuje również czas wymagany do ponownego wykonania (zastosowania) tych rekordów dziennika na stronach danych. Aby zapewnić spójność danych, zmiany nie są widoczne do momentu zastosowania rekordu dziennika zatwierdzenia transakcji. Gdy obciążenie korzysta z większych transakcji, zwiększa się efektywne opóźnienie propagacji danych.
Aby monitorować opóźnienie propagacji danych, zobacz Monitorowanie i rozwiązywanie problemów z repliką tylko do odczytu.
Nawiązywanie połączenia z repliką tylko do odczytu
Po włączeniu skalowania odczytu w poziomie dla bazy danych opcja w parametry połączenia podana przez klienta określa, ApplicationIntent
czy połączenie jest kierowane do repliki zapisu, czy do repliki tylko do odczytu. W szczególności, jeśli ApplicationIntent
wartość to ReadWrite
(wartość domyślna), połączenie jest kierowane do repliki odczytu i zapisu. Jest to identyczne z zachowaniem, gdy ApplicationIntent
nie jest uwzględnione w parametry połączenia. ApplicationIntent
Jeśli wartość to ReadOnly
, połączenie jest kierowane do repliki tylko do odczytu.
Na przykład następujące parametry połączenia łączy klienta z repliką tylko do odczytu (zastępując elementy w nawiasach kątowych poprawnymi wartościami środowiska i upuszczając nawiasy kątowe):
Server=tcp:<server>.database.windows.net;Database=<mydatabase>;ApplicationIntent=ReadOnly;User ID=<myLogin>;Password=<password>;Trusted_Connection=False; Encrypt=True;
Aby nawiązać połączenie z repliką tylko do odczytu przy użyciu programu SQL Server Management Studio (SSMS), wybierz pozycję Opcje
Wybierz pozycję Dodatkowe parametry połączenia i wprowadź, ApplicationIntent=ReadOnly
a następnie wybierz pozycję Połącz
Jeden z następujących parametry połączenia łączy klienta z repliką do odczytu i zapisu (zastępując elementy w nawiasach kątowych poprawnymi wartościami środowiska i upuszczając nawiasy kątowe):
Server=tcp:<server>.database.windows.net;Database=<mydatabase>;ApplicationIntent=ReadWrite;User ID=<myLogin>;Password=<password>;Trusted_Connection=False; Encrypt=True;
Server=tcp:<server>.database.windows.net;Database=<mydatabase>;User ID=<myLogin>;Password=<password>;Trusted_Connection=False; Encrypt=True;
Sprawdź, czy połączenie jest z repliką tylko do odczytu
Możesz sprawdzić, czy masz połączenie z repliką tylko do odczytu, uruchamiając następujące zapytanie w kontekście bazy danych. Zwraca READ_ONLY, gdy masz połączenie z repliką tylko do odczytu.
SELECT DATABASEPROPERTYEX(DB_NAME(), 'Updateability');
Uwaga
W warstwach usługi Premium i Krytyczne dla działania firmy tylko jedna replika tylko do odczytu jest dostępna w danym momencie. Hiperskala obsługuje wiele replik tylko do odczytu.
Monitorowanie replik tylko do odczytu i rozwiązywanie problemów
W przypadku połączenia z repliką tylko do odczytu dynamiczne widoki zarządzania odzwierciedlają stan repliki i mogą być odpytywane w celu monitorowania i rozwiązywania problemów. Aparat bazy danych udostępnia wiele widoków, aby uwidocznić szeroką gamę danych monitorowania.
Następujące widoki są często używane do monitorowania replik i rozwiązywania problemów:
Nazwisko | Purpose |
---|---|
sys.dm_db_resource_stats | Udostępnia metryki wykorzystania zasobów w ciągu ostatniej godziny, w tym procesor CPU, operacje we/wy danych i użycie zapisu dziennika względem limitów celu usługi. |
sys.dm_os_wait_stats | Udostępnia zagregowane statystyki oczekiwania dla wystąpienia aparatu bazy danych. |
sys.dm_database_replica_states | Udostępnia statystyki kondycji i synchronizacji repliki. Powtórz rozmiar kolejki i szybkość ponownego wdrażania służą jako wskaźniki opóźnienia propagacji danych w repliki tylko do odczytu. |
sys.dm_os_performance_counters | Zapewnia liczniki wydajności aparatu bazy danych. |
sys.dm_exec_query_stats | Udostępnia statystyki wykonywania poszczególnych zapytań, takie jak liczba wykonań, czas użycia procesora CPU itp. |
sys.dm_exec_query_plan() | Udostępnia buforowane plany zapytań. |
sys.dm_exec_sql_text() | Udostępnia tekst zapytania dla buforowanego planu zapytania. |
sys.dm_exec_query_profiles | Zapewnia postęp zapytań w czasie rzeczywistym, gdy zapytania są wykonywane. |
sys.dm_exec_query_plan_stats() | Zawiera ostatni znany rzeczywisty plan wykonywania, w tym statystyki środowiska uruchomieniowego dla zapytania. |
sys.dm_io_virtual_file_stats() | Udostępnia statystyki liczby operacji we/wy na sekundę magazynu, przepływności i opóźnień dla wszystkich plików bazy danych. |
Uwaga
Widoki sys.resource_stats
DMV i sys.elastic_pool_resource_stats
w logicznej master
bazie danych zwracają dane użycia zasobów repliki podstawowej.
Monitorowanie replik tylko do odczytu za pomocą zdarzeń rozszerzonych
Nie można utworzyć sesji zdarzeń rozszerzonych podczas nawiązywania połączenia z repliką tylko do odczytu. Jednak w usługach Azure SQL Database i Azure SQL Managed Instance definicje sesji zdarzeń rozszerzonych o zakresie bazy danych utworzone i zmienione w replikach repliki podstawowej do replik tylko do odczytu, w tym repliki geograficzne, i przechwytywanie zdarzeń w replikach tylko do odczytu.
W usłudze Azure SQL Database rozszerzona sesja zdarzeń w repliki tylko do odczytu oparta na definicji sesji z repliki podstawowej może zostać uruchomiona i zatrzymana niezależnie od sesji w repliki podstawowej.
Aby w usłudze Azure SQL Managed Instance uruchomić ślad w repliki tylko do odczytu, musisz najpierw uruchomić ślad w repliki podstawowej, zanim będzie można uruchomić ślad w repliki tylko do odczytu. Jeśli nie najpierw uruchomisz śladu w repliki podstawowej, podczas próby uruchomienia śledzenia w repliki tylko do odczytu zostanie wyświetlony następujący błąd:
Msg 3906, Level 16, State 2, Line 1 Nie można zaktualizować bazy danych "master", ponieważ baza danych jest tylko do odczytu.
Po pierwszym uruchomieniu śledzenia w repliki podstawowej, a następnie w repliki tylko do odczytu, można zatrzymać śledzenie w repliki podstawowej.
Aby usunąć sesję zdarzeń w repliki tylko do odczytu, wykonaj następujące kroki:
- Połącz program SSMS Eksplorator obiektów lub okno zapytania z repliką tylko do odczytu.
- Zatrzymaj sesję w repliki tylko do odczytu, wybierając pozycję Zatrzymaj sesję w menu kontekstowym sesji w Eksplorator obiektów lub wykonując polecenie
ALTER EVENT SESSION [session-name-here] ON DATABASE STATE = STOP;
w oknie zapytania. - Połącz Eksplorator obiektów lub okno zapytania z repliką podstawową.
- Upuść sesję w repliki podstawowej, wybierając pozycję Usuń w menu kontekstowym sesji lub wykonując polecenie
DROP EVENT SESSION [session-name-here] ON DATABASE;
Poziom izolacji transakcji w replikach tylko do odczytu
Transakcje w replikach tylko do odczytu zawsze używają migawki poziomu izolacji transakcji, niezależnie od poziomu izolacji transakcji sesji i niezależnie od wskazówek dotyczących zapytań. Izolacja migawki używa przechowywania wersji wierszy, aby uniknąć blokowania scenariuszy, w których czytelnicy blokują zapisy.
W rzadkich przypadkach, jeśli transakcja izolacji migawki uzyskuje dostęp do metadanych obiektu, które zostały zmodyfikowane w innej transakcji współbieżnej, może zostać wyświetlony błąd 3961: "Transakcja izolacji migawki nie powiodła się w bazie danych "%.*ls", ponieważ obiekt, do którego uzyskiwano dostęp przez instrukcję, został zmodyfikowany przez instrukcję DDL w innej transakcji współbieżnej od początku tej transakcji. Jest to niedozwolone, ponieważ metadane nie są poddane kontroli wersji. Równoczesna aktualizacja metadanych może prowadzić do niespójności w przypadku mieszanych z izolacją migawki".
Długotrwałe zapytania dotyczące replik tylko do odczytu
Zapytania uruchomione w replikach tylko do odczytu muszą uzyskiwać dostęp do metadanych obiektów, do których odwołuje się zapytanie (tabele, indeksy, statystyki itp.) W rzadkich przypadkach, jeśli metadane obiektu są modyfikowane w repliki podstawowej, podczas gdy zapytanie przechowuje blokadę na tym samym obiekcie w repliki tylko do odczytu, zapytanie może zablokować proces, który stosuje zmiany z repliki podstawowej do repliki tylko do odczytu. Gdyby takie zapytanie było uruchamiane przez długi czas, spowodowałoby to znaczne brak synchronizacji repliki tylko do odczytu z repliką podstawową. W przypadku replik, które są potencjalnymi miejscami docelowymi trybu failover (replikami pomocniczymi w warstwach Premium i Krytyczne dla działania firmy usług, replikami wysokiej dostępności hiperskala i wszystkimi replikami geograficznymi), opóźniłoby to również odzyskiwanie bazy danych w przypadku wystąpienia trybu failover, co spowodowałoby dłuższy niż oczekiwano przestój.
Jeśli długotrwałe zapytanie w repliki tylko do odczytu bezpośrednio lub pośrednio powoduje takie blokowanie, może zostać automatycznie zakończone, aby uniknąć nadmiernego opóźnienia danych i potencjalnego wpływu na dostępność bazy danych. Sesja otrzymuje błąd 1219 "Sesja została rozłączona z powodu operacji DDL o wysokim priorytcie" lub błąd 3947" Transakcja została przerwana, ponieważ pomocnicze obliczenia nie nadrobiły zaległości. Ponów próbę transakcji".
Uwaga
Jeśli podczas uruchamiania zapytań względem repliki tylko do odczytu wystąpi błąd 3961, 1219 lub 3947, spróbuj ponownie wykonać zapytanie. Alternatywnie należy unikać operacji modyfikujących metadane obiektu (zmiany schematu, konserwację indeksu, aktualizacje statystyk itp.) w repliki podstawowej, podczas gdy długotrwałe zapytania są wykonywane na replikach pomocniczych.
Napiwek
W warstwach usługi Premium i Krytyczne dla działania firmy w przypadku połączenia z repliką redo_queue_size
tylko do odczytu kolumny i redo_rate
w sys.dm_database_replica_states dmV mogą służyć do monitorowania procesu synchronizacji danych, służąc jako wskaźniki opóźnienia propagacji danych w replice tylko do odczytu.
Włączanie i wyłączanie skalowania odczytu w poziomie dla usługi SQL Database
W przypadku usługi SQL Managed Instance skalowanie w poziomie jest automatycznie włączone w warstwie usługi Krytyczne dla działania firmy i nie jest dostępne w warstwie usługi Ogólnego przeznaczenia. Wyłączenie i ponowne opublikowanie odczytu w poziomie nie jest możliwe.
W przypadku usługi SQL Database skalowanie odczytu w poziomie jest domyślnie włączone w warstwach usług Premium, Krytyczne dla działania firmy i Hiperskala. Nie można włączyć skalowania odczytu w poziomie w warstwach usług Podstawowa, Standardowa lub Ogólnego przeznaczenia. Skalowanie odczytu w poziomie jest automatycznie wyłączone w bazach danych w warstwie Hiperskala skonfigurowanych z zerowymi replikami pomocniczymi.
W przypadku pojedynczych baz danych i baz danych w puli w usłudze Azure SQL Database można wyłączyć i ponownie włączyć skalowanie odczytu w poziomie w warstwach usługi Premium lub Krytyczne dla działania firmy przy użyciu witryny Azure Portal i programu Azure PowerShell. Te opcje nie są dostępne dla usługi SQL Managed Instance, ponieważ nie można wyłączyć skalowania odczytu w poziomie.
Uwaga
W przypadku pojedynczych baz danych i baz danych elastycznej puli można wyłączyć skalowanie odczytu w poziomie w celu zapewnienia zgodności z poprzednimi wersjami. Nie można wyłączyć skalowania odczytu w poziomie w Krytyczne dla działania firmy wystąpieniach zarządzanych.
Azure Portal
W przypadku usługi Azure SQL Database można zarządzać ustawieniem skalowania odczytu w poziomie w okienku Obliczenia i baza danych magazynu dostępna w obszarze Ustawienia. Włączanie lub wyłączanie skalowania odczytu w poziomie przy użyciu witryny Azure Portal nie jest dostępne dla usługi Azure SQL Managed Instance.
PowerShell
Ważne
Moduł Azure Resource Manager programu PowerShell jest nadal obsługiwany, ale wszystkie przyszłe programowanie dotyczy modułu Az.Sql. Moduł usługi Azure Resource Manager będzie nadal otrzymywać poprawki błędów do co najmniej grudnia 2020 r. Argumenty poleceń w module Az i modułach usługi Azure Resource Manager są zasadniczo identyczne. Aby uzyskać więcej informacji na temat ich zgodności, zobacz Wprowadzenie do nowego modułu Az programu Azure PowerShell.
Zarządzanie skalowaniem odczytu w poziomie w programie Azure PowerShell wymaga wydania programu Azure PowerShell z grudnia 2016 r. lub nowszego. Aby uzyskać najnowszą wersję programu PowerShell, zobacz Azure PowerShell.
W usłudze Azure SQL Database możesz wyłączyć lub ponownie włączyć skalowanie odczytu w poziomie w programie Azure PowerShell, wywołując polecenie cmdlet Set-AzSqlDatabase i przekazując żądaną wartość (Enabled
lub Disabled
) dla parametru -ReadScale
. Wyłączenie skalowania odczytu w poziomie dla usługi SQL Managed Instance nie jest dostępne.
Aby wyłączyć skalowanie odczytu w poziomie w istniejącej bazie danych (zastępując elementy w nawiasach kątowych poprawnymi wartościami środowiska i upuszczając nawiasy kątowe):
Set-AzSqlDatabase -ResourceGroupName <resourceGroupName> -ServerName <serverName> -DatabaseName <databaseName> -ReadScale Disabled
Aby wyłączyć skalowanie odczytu w poziomie dla nowej bazy danych (zastępując elementy w nawiasach kątowych poprawnymi wartościami środowiska i upuszczając nawiasy kątowe):
New-AzSqlDatabase -ResourceGroupName <resourceGroupName> -ServerName <serverName> -DatabaseName <databaseName> -ReadScale Disabled -Edition Premium
Aby ponownie włączyć skalowanie odczytu w poziomie w istniejącej bazie danych (zastępując elementy w nawiasach kątowych poprawnymi wartościami środowiska i upuszczając nawiasy kątowe):
Set-AzSqlDatabase -ResourceGroupName <resourceGroupName> -ServerName <serverName> -DatabaseName <databaseName> -ReadScale Enabled
Interfejs API REST
Aby utworzyć bazę danych z wyłączonym skalowaniem odczytu lub zmienić ustawienie dla istniejącej bazy danych, użyj następującej metody z właściwością readScale
ustawioną na Enabled
lub Disabled
, jak w poniższym przykładowym żądaniu.
Method: PUT
URL: https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{GroupName}/providers/Microsoft.Sql/servers/{ServerName}/databases/{DatabaseName}?api-version= 2014-04-01-preview
Body: {
"properties": {
"readScale":"Disabled"
}
}
Aby uzyskać więcej informacji, zobacz Bazy danych — tworzenie lub aktualizowanie.
tempdb
Używanie bazy danych w repliki tylko do odczytu
Baza tempdb
danych w repliki podstawowej nie jest replikowana do replik tylko do odczytu. Każda replika ma własną tempdb
bazę danych utworzoną podczas tworzenia repliki. Gwarantuje to możliwość tempdb
aktualizacji i możliwość modyfikacji podczas wykonywania zapytania. Jeśli obciążenie tylko do odczytu zależy od używania tempdb
obiektów, należy utworzyć te obiekty w ramach tego samego obciążenia, gdy jest on połączony z repliką tylko do odczytu.
Używanie skalowania odczytu w poziomie z geograficznie replikowanymi bazami danych
Pomocnicze pomocnicze bazy danych replikowane geograficznie mają taką samą architekturę wysokiej dostępności jak podstawowe bazy danych. Jeśli łączysz się z pomocniczą bazą danych replikowanej geograficznie z włączonym skalowaniem odczytu w poziomie, sesje z ApplicationIntent=ReadOnly
programem są kierowane do jednej z replik wysokiej dostępności w taki sam sposób, jak są kierowane do podstawowej bazy danych z możliwością zapisu. Sesje bez ApplicationIntent=ReadOnly
są kierowane do podstawowej repliki pomocniczej replikowanej geograficznie, która jest również tylko do odczytu.
W ten sposób utworzenie repliki geograficznej może zapewnić wiele dodatkowych replik tylko do odczytu dla podstawowej bazy danych odczytu i zapisu. Każda dodatkowa replika geograficzna udostępnia kolejny zestaw replik tylko do odczytu. Repliki geograficzne można tworzyć w dowolnym regionie świadczenia usługi Azure, w tym w regionie podstawowej bazy danych.
Uwaga
Nie ma żadnego automatycznego działania okrężnego ani żadnego innego routingu z równoważeniem obciążenia między replikami pomocniczej bazy danych replikowanej geograficznie, z wyjątkiem repliki geograficznej hiperskala z więcej niż jedną repliką wysokiej dostępności. W takim przypadku sesje z intencją tylko do odczytu są dystrybuowane na wszystkich replikach wysokiej dostępności repliki geograficznej.
Obsługa funkcji w replikach tylko do odczytu
Lista zachowania niektórych funkcji w replikach tylko do odczytu jest następująca:
- Inspekcja replik tylko do odczytu jest włączana automatycznie. Aby uzyskać więcej informacji na temat hierarchii folderów magazynu, konwencji nazewnictwa i formatu dziennika, zobacz Format dziennika inspekcji usługi SQL Database.
- Szczegółowe informacje o wydajności zapytań opierają się na danych z magazynu zapytań, które obecnie nie śledzą aktywności w repliki tylko do odczytu. Szczegółowe informacje o wydajności zapytań nie pokazują zapytań wykonywanych w repliki tylko do odczytu.
- Automatyczne dostrajanie opiera się na magazynie zapytań, zgodnie z opisem w dokumencie Automatycznego dostrajania. Automatyczne dostrajanie działa tylko w przypadku obciążeń uruchomionych w replice podstawowej.
Następne kroki
- Aby uzyskać informacje o ofercie hiperskala usługi SQL Database, zobacz Warstwa usługi Hiperskala.