Automatisk justering i Azure SQL Database och Azure SQL Managed Instance

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

Azure SQL Database och Azure SQL Managed Instance 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 använder inbyggd intelligens för att kontinuerligt övervaka frågor som körs på en databas och automatiskt förbättra deras prestanda. 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 dess justeringsåtgärder. Ju längre en databas körs med automatisk justering på, desto bättre presterar den.

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

Vad kan automatisk justering göra åt dig

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

Säker, 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å fall visas meddelandet "Inaktiverad av systemet" i Azure Portal och i sys.database_automatic_tuning_options DMV. Automatisk justering är utformad för att ge användarnas arbetsbelastningar 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 att arbetsbelastningens prestanda förbättras avsevärt. Om det inte sker någon förbättring, eller i osannolika fall 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.

Hur fungerar automatisk justering?

Azure SQL automatisk justering delar sin kärnlogik med funktionen SQL Server automatisk justering i databasmotorn. Ytterligare teknisk information om den inbyggda intelligensmekanismen finns i SQL Server automatisk justering.

Aktivera automatisk inställning

Alternativ för automatisk justering

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

Alternativ för automatisk justering Description 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ågors prestanda har förbättrats. När du rekommenderar ett nytt index tar systemet hänsyn till tillgängligt utrymme i databasen. Om indextillägget beräknas öka utrymmesutnyttjandet till över 90 % mot maximal datastorlek genereras inte indexrekommendationen. När systemet identifierar en period med låg användning och börjar skapa ett index pausas eller avbryts inte den här åtgärden även om resursutnyttjandet oväntat ökar. Om det inte går att skapa index 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 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 Portal, i PowerShell och i REST-API:et.

Du kan antingen tillämpa justeringsrekommendationer manuellt med hjälp av Azure Portal eller låta automatisk justering tillämpa justeringsrekommendationer för dig. Fördelarna med att låta systemet tillämpa justeringsrekommendationer på ett autonomt sätt är att det automatiskt validerar att det finns en positiv vinst för arbetsbelastningens prestanda, och om det inte finns någon betydande prestandaförbättring identifierad eller om prestandaregressering sker återställer systemet automatiskt de ändringar som har gjorts. Beroende på frågekörningsfrekvens kan valideringsprocessen ta från 30 minuter till 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 omsvängning 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 Portal.

Automatiska justeringsalternativ kan aktiveras oberoende av varandra eller inaktiveras 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. Azures standardinställningar är inställda på FORCE_LAST_GOOD_PLAN aktiverad, CREATE_INDEX inaktiverad och DROP_INDEX inaktiverad.

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 alternativ för automatisk justering för ett stort antal databaser.

Mer information om hur du skapar e-postaviseringar för automatiska justeringsrekommendationer finns i Email meddelanden 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 av automatisk justering i 21 dagar. Den kan visas i Azure Portal på sidan Prestandarekommendationer för en databas eller med hjälp av 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ällningenAutomaticTuning.

Nästa steg