Automatisk justering i Azure SQL Database och Azure SQL Managed Instance

Gäller för:Azure SQL DatabaseAzure SQL Managed Instance

Automatisk justering av Azure SQL Database och Azure SQL Managed Instance ger högsta prestanda och stabila arbetsbelastningar genom kontinuerlig prestandajustering baserat på AI och maskininlärning.

Automatisk justering är en helt hanterad intelligent prestandatjänst som använder inbyggd intelligens för att kontinuerligt övervaka frågor som körs mot en databas och förbättrar prestanda automatiskt. Detta uppnås genom att dynamiskt anpassa en databas till att ändra arbetsbelastningar och tillämpa rekommendationer för justering. Automatisk justering lär sig horisontellt från alla databaser i Azure via AI och förbättrar dynamiskt sina justeringsåtgärder. Ju längre en databas körs med automatisk justering, desto bättre presterar den.

Automatisk justering av Azure SQL Database och Azure SQL Managed Instance kan vara en av de mest effektfulla funktionerna som du kan aktivera för att tillhandahålla stabila och högpresterande databasarbetsbelastningar.

Automatisk justering i Azure SQL delar sin kärnlogik med funktionen för automatisk justering av SQL Server i databasmotorn. Mer teknisk information om den inbyggda intelligensmekanismen finns i Automatisk justering av SQL Server.

Vad kan automatisk justering göra åt dig?

  • Automatisk prestandajustering av databaser
  • Automatiserad verifiering av prestandavinster
  • Automatisk återställning och självkorrigering
  • Justeringshistorik
  • Justera åtgärdsskript för Transact-SQL (T-SQL) för manuella distributioner
  • Skala ut kapacitet på hundratusentals databaser
  • Positiv inverkan på DevOps-resurser och den totala ägandekostnaden

Valv, tillförlitlig och beprövad

Justeringsåtgärder som tillämpas på databaser är helt säkra för prestanda för dina mest intensiva arbetsbelastningar. Systemet har utformats med försiktighet för att inte störa användararbetsbelastningar. Rekommendationer för automatisk justering tillämpas endast vid en låg användning av CPU, data-I/O och logg-I/O. Systemet kan också tillfälligt inaktivera automatiska justeringsåtgärder för att skydda arbetsbelastningens prestanda. I sådana fall visas meddelandet "Inaktiverad av systemet" i Azure-portalen och i sys.database_automatic_tuning_options DMV. Automatisk justering är utformad för att ge användararbetsbelastningar högsta resursprioritet.

Automatiska justeringsmekanismer är mogna och har fulländats på flera miljoner databaser som körs i Azure. Automatiska justeringsåtgärder som tillämpas verifieras automatiskt för att säkerställa en märkbar positiv förbättring av arbetsbelastningens prestanda. Om det inte sker någon förbättring, eller i det osannolika fallet prestandaregresser, återställs ändringar som görs genom automatisk justering omedelbart. Genom den registrerade justeringshistoriken finns det en tydlig spårning av justeringsförbättringar som gjorts för varje databas i Azure SQL Database.

How does automatic tuning work

Aktivera automatisk inställning

Alternativ för automatisk justering

De automatiska justeringsalternativ som är tillgängliga i Azure SQL Database och Azure SQL Managed Instance är:

Alternativ för automatisk justering beskrivning Stöd för enkel databas och pooldatabas Stöd för instansdatabas
SKAPA INDEX Identifierar index som kan förbättra arbetsbelastningens prestanda, skapar index och verifierar automatiskt att prestandan för frågor har förbättrats. När du rekommenderar ett nytt index tar systemet hänsyn till tillgängligt utrymme i databasen. Om indextillägg beräknas öka utrymmesanvändningen till över 90 % mot maximal datastorlek genereras inte indexrekommendationen. När systemet har identifierat en period med låg användning och börjar skapa ett index pausas eller avbryts inte den här åtgärden även om resursanvändningen oväntat ökar. Om indexet inte skapas görs ett nytt försök under en framtida period med låg användning. Indexrekommendationer tillhandahålls inte för tabeller där det klustrade indexet eller heapen är större än 10 GB. Ja Nej
SLÄPP INDEX Droppar oanvända (under de senaste 90 dagarna) och duplicerade index. Unika index, inklusive index som stöder primärnyckel och unika begränsningar, tas aldrig bort. Det här alternativet kan inaktiveras automatiskt när frågor med indextips finns i arbetsbelastningen eller när arbetsbelastningen utför partitionsväxling. På Premium- och Affärskritisk-tjänstnivåer kommer det här alternativet aldrig att släppa oanvända index, men släpper eventuella dubbletter av index. Ja Nej
FORCE LAST GOOD PLAN (automatisk plankorrigering) Identifierar Azure SQL-frågor med hjälp av en körningsplan som är långsammare än den tidigare bra planen och tvingar frågor att använda den senast kända bra planen i stället för den regresserade planen. Ja Ja

Automatisk justering för SQL Database

Automatisk justering för Azure SQL Database använder rekommendationerna CREATE INDEX, DROP INDEX och FORCE_LAST_GOOD_PLAN database advisor för att optimera databasens prestanda. Mer information finns i rekommendationer för databasrådgivare i Azure-portalen, i PowerShell och i REST-API:et.

Du kan antingen tillämpa justeringsrekommendationer manuellt med hjälp av Azure-portalen, eller så kan du låta automatisk justering tillämpa justeringsrekommendationer för dig. Fördelarna med att låta systemet autonomt tillämpa justeringsrekommendationer för dig är att det automatiskt verifierar att det finns en positiv vinst för arbetsbelastningens prestanda, och om det inte finns någon betydande prestandaförbättring identifierad eller om prestandaregresses återställer systemet automatiskt de ändringar som har gjorts. Beroende på frågekörningsfrekvens kan valideringsprocessen ta mellan 30 minuter och 72 timmar, vilket tar längre tid för att köra frågor mindre ofta. Om någon gång under valideringen identifieras en regression återställs ändringarna omedelbart.

Viktigt!

Om du tillämpar justeringsrekommendationer via T-SQL är mekanismerna för automatisk prestandaverifiering och återföring inte tillgängliga. Rekommendationer tillämpas på ett sådant sätt förblir aktiv och visas i listan över justeringsrekommendationer i 24–48 timmar innan systemet automatiskt drar tillbaka dem. Om du vill ta bort en rekommendation tidigare kan du ta bort den från Azure-portalen.

Automatiska justeringsalternativ kan aktiveras eller inaktiveras separat för varje databas, eller så kan de konfigureras på servernivå och tillämpas på varje databas som ärver inställningar från servern. Som standard ärver nya servrar Azure-standardvärden för inställningar för automatisk justering. Azure-standardvärden är inställda på FORCE_LAST_GOOD_PLAN aktiverade, CREATE_INDEX inaktiverade och DROP_INDEX inaktiverade.

Att konfigurera automatiska justeringsalternativ på en server och ärva inställningar för databaser som tillhör den överordnade servern är den rekommenderade metoden för att konfigurera automatisk justering. Det förenklar hanteringen av automatiska justeringsalternativ för ett stort antal databaser.

Mer information om hur du skapar e-postaviseringar för automatiska justeringsrekommendationer finns i E-postaviseringar för automatisk justering.

Automatisk justering för Azure SQL Managed Instance

Automatisk justering för SQL Managed Instance har bara stöd för FORCE LAST GOOD PLAN. Mer information om hur du konfigurerar alternativ för automatisk justering via T-SQL finns i Automatisk justering introducerar automatisk plankorrigering och Automatisk plankorrigering.

Automatisk justeringshistorik

För Azure SQL Database behålls historiken för ändringar som görs genom automatisk justering i 21 dagar. Den kan visas i Azure-portalen på sidan Prestandarekommendationer för en databas eller använda PowerShell med cmdleten Get-AzSqlDatabaseRecommendedAction . För längre kvarhållning kan historikdata också strömmas till flera typer av mål genom att aktivera diagnostikinställningen AutomaticTuning.

Nästa steg