Dela via


Automatisk databastuning

gäller för:Azure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Fabric

Automatisk justering ger högsta prestanda och stabila arbetsbelastningar genom kontinuerlig prestandajustering baserat på AI och maskininlärning.

Automatisk justering är en fullständigt hanterad, intelligent prestandatjänst som kontinuerligt övervakar frågor som körs på en databas och automatiskt förbättrar prestandan. Detta uppnås genom att dynamiskt anpassa en databas till att ändra arbetsbelastningar och tillämpa justeringsrekommendationer.

Automatisk justering lär sig horisontellt från alla databaser i Azure via AI och förbättrar dynamiskt sina justeringsåtgärder.

Säker, tillförlitlig och beprövad

Justeringsåtgärder som tillämpas på databaser är helt säkra för prestandan hos dina mest intensiva arbetstyngder. Systemet har utformats med försiktighet för att inte störa användararbetsbelastningar.

diagram som visar hur automatisk justering fungerar.

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 dynamisk hanteringsvy. 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 att prestandan försämras, återställs ändringar som görs av automatisk optimering omedelbart. Genom inställningshistorik finns en tydlig registrering av förbättringar i inställningar som gjorts för varje databas i Azure SQL Database. Ju längre en databas körs med automatisk justering aktiverad, desto mer kan den dra nytta av det.

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?

Automatiserad prestandajustering av databaser omfattar:

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

Aktivera automatisk justering

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
CREATE INDEX Identifierar index som kan förbättra arbetsbelastningens prestanda, skapar index och verifierar automatiskt att frågeprestandan 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 klustrat index eller heap är större än 10 GB. Ja Nej
DROP INDEX Tar bort 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ärskritiska tjänstnivåer kommer det här alternativet aldrig att släppa oanvända index, men dubbletter av eventuella index tas bort. 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 Azure SQL Database

Automatisk justering för Azure SQL Database använder rekommendationerna CREATE INDEX, DROP INDEXoch FORCE_LAST_GOOD_PLAN database advisor för att optimera databasens prestanda. Mer information finns i Hitta och tillämpa prestandarekommendationer i Azure Portal, i PowerShelloch i REST API.

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 åt dig är att det automatiskt bekräftar om det finns en positiv förbättring av arbetsbelastningens prestanda, och om ingen betydande prestandaförbättring identifieras eller om prestandan blir sämre, å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.

Viktig

Om du tillämpar justeringsrekommendationer via T-SQL är mekanismerna för automatisk prestandaverifiering och återföring inte tillgängliga. Rekommendationer som tillämpas på detta sätt förblir aktiva 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 stöder endast 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 justering för SQL-databas i Microsoft Fabric

Alternativet för automatisk inställning av CREATE INDEX är aktiverat automatiskt i SQL-databasen i Microsoft Fabric.

Prover för att möjliggöra

Mer information finns i ALTER DATABASE SET-alternativ.

Om du vill ärva standardkonfigurationen från den överordnade logiska servern använder du följande T-SQL. I Azure-portalen visar detta alternativet "Ärver från: Server".

ALTER DATABASE CURRENT 
SET AUTOMATIC_TUNING = INHERIT;

Använd följande T-SQL för att aktivera CREATE INDEX och DROP INDEX automatiska justeringsalternativ.

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

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 med hjälp av PowerShell med cmdleten Get-AzSqlDatabaseRecommendedAction. För längre lagring kan historikdata också strömmas till flera typer av mål genom att aktivera diagnostikinställningen AutomaticTuning.