Övervaka och prestandajustering i Azure SQL Database och Azure SQL Managed Instance

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

När du ska övervaka prestanda för en databas i Azure SQL Database och Azure SQL Managed Instance börjar du med att övervaka de processor- och I/O-resurser som används av arbetsbelastningen i förhållande till den nivå av databasprestanda du valde när du valde en viss tjänstnivå och prestandanivå. För att åstadkomma detta genererar Azure SQL Database och Azure SQL Managed Instance resursmått som kan visas i Azure-portalen eller med något av följande SQL Server-hanteringsverktyg:

Övervaka en lösning SQL Database SQL-hanterad instans Kräver agent på en kundägd virtuell dator
Mått och aviseringar Ja Ja Nej
Query Performance Insight Ja No Nej
Övervaka med hjälp av DMV:er Ja Ja Nej
Övervaka med hjälp av frågearkiv Ja Ja Nej
SQL Insights (förhandsversion) i Azure Monitor Ja Ja Ja
Azure SQL Analytics (förhandsversion) med hjälp av Azure Monitor-loggar * Ja Ja Nej

* För lösningar som kräver övervakning med låg svarstid rekommenderas inte Azure SQL Analytics (förhandsversion).

Databasrådgivare i Azure-portalen

Azure SQL Database tillhandahåller ett antal Database Advisors för att ge intelligenta prestandajusteringsrekommendationer och automatiska justeringsalternativ för att förbättra prestanda.

sidan Query Performance Insight visas dessutom information om de frågor som ansvarar för mest CPU- och I/O-användning för enkla databaser och pooldatabaser.

  • Query Performance Insight är tillgängligt i Azure-portalen i fönstret Översikt i Azure SQL Database under "Intelligent prestanda". Använd den automatiskt insamlade informationen för att identifiera frågor och börja optimera arbetsbelastningens prestanda.
  • Du kan också konfigurera automatisk justering för att implementera dessa rekommendationer automatiskt, till exempel att tvinga fram en frågekörningsplan för att förhindra regression eller skapa och släppa icke-illustrerade index baserat på arbetsbelastningsmönster. Automatisk justering är också tillgänglig i Azure-portalen i fönstret Översikt i Azure SQL Database under "Intelligent prestanda".

Azure SQL Database och Azure SQL Managed Instance tillhandahåller avancerade övervaknings- och justeringsfunktioner som backas upp av artificiell intelligens för att hjälpa dig att felsöka och maximera prestanda för dina databaser och lösningar. Du kan välja att konfigurera direktexporten av dessa Intelligent Insights och andra databasresursloggar och -mått till ett av flera mål för förbrukning och analys.

Utanför Azure-portalen har databasmotorn sina egna övervaknings- och diagnostikfunktioner som Azure SQL Database och SQL Managed Instance använder, till exempel frågearkiv och dynamiska hanteringsvyer (DMV:er). Se Övervakning med DMV:er för skript för att övervaka en mängd olika prestandaproblem i Azure SQL Database och Azure SQL Managed Instance.

Azure SQL Insights (förhandsversion) och Azure SQL Analytics (förhandsversion)

Båda erbjudandena använder olika pipelines för att presentera data till en mängd olika slutpunkter för kommande Azure SQL Database-mått.

  • Azure SQL Insights (förhandsversion) är ett projekt i Azure Monitor som kan ge avancerade insikter om Azure SQL-databasaktivitet. Den distribueras via en kundhanterad virtuell dator med Telegraf som en samlingsagent som ansluter till SQL-källor, samlar in data och flyttar data till Log Analytics.

  • Azure SQL Analytics (förhandsversion) kräver också Log Analytics för att ge avancerade insikter om Azure SQL-databasaktivitet.

  • Azure-diagnostiktelemetri är en separat strömmande datakälla för Azure SQL Database och Azure SQL Managed Instance. SqlInsights är en logg i Intelligent Insights och är ett av flera paket med telemetri som genereras av Azure-diagnostikinställningar. Diagnostikinställningar är en funktion som innehåller resursloggkategorier (kallades tidigare för diagnostikloggar). Mer information finns i Diagnostiktelemetri för export.

    • Azure SQL Analytics (förhandsversion) använder resursloggarna som kommer från diagnostiktelemetrin (kan konfigureras under Diagnostik Inställningar i Azure-portalen), medan Azure SQL Insights (förhandsversion) använder en annan pipeline för att samla in Azure SQL-telemetri.

Övervaka och diagnostisera telemetri

Följande diagram beskriver alla databasmotorn, plattformsmått, resursloggar och Azure-aktivitetsloggar som genereras av Azure SQL-produkter, hur de bearbetas och hur de kan visas för analys.

Diagram showing complete logging and diagnostic information paths for Azure SQL products.

Övervaka och finjustera Azure SQL i Azure-portalen

I Azure-portalen tillhandahåller Azure SQL Database och Azure SQL Managed Instance övervakning av resursmått. Azure SQL Database tillhandahåller databasrådgivare och Query Performance Insight ger rekommendationer för frågejustering och analys av frågeprestanda. I Azure-portalen kan du aktivera automatisk justering för logiska SQL-servrar och deras enkla databaser och pooldatabaser.

Kommentar

Databaser med extremt låg användning kan visas i portalen med mindre än faktisk användning. På grund av hur telemetri genereras när du konverterar ett dubbelt värde till närmaste heltal avrundas vissa användningsbelopp mindre än 0,5 till 0, vilket orsakar en förlust i kornigheten för den utgivna telemetrin. Mer information finns i Mått för låg databas och elastisk pool som avrundas till noll.

Resursövervakning av Azure SQL Database och Azure SQL Managed Instance

Du kan snabbt övervaka en mängd olika resursmått i Azure-portalen i vyn Mått. Med de här måtten kan du se om en databas närmar sig gränserna för CPU-, minnes-, I/O- eller lagringsresurser. Hög DTU-, CPU- eller I/O-användning kan tyda på att din arbetsbelastning behöver mer resurser. Det kan också tyda på att frågor måste optimeras. Se Microsoft.Sql/servers/databases, Microsoft.Sql/servers/elasticPools och Microsoft.Sql/managedInstances för mått som stöds i Azure SQL Database och Azure SQL Managed Instance.

A screenshot from the Azure portal of resource metrics for a SQL database.

En uppsättning rekommenderade aviseringsregler i Azure SQL Database finns i Övervaka Azure SQL Database med Azure Monitor-mått och aviseringar.

Kommentar

Lagringsrelaterade mått i Azure-portalen, till exempel Datautrymme som används, rapporteras i power-of-two-värden, men med hjälp av power-of-ten-enheter. Till exempel refererar 1 MB lagringsutrymme till 1 048 576 byte, inte 1 000 000 byte. De nyare enheter som används för power-of-two-värden är KiB, MiB, GiB osv. För kompatibilitet och konsekvens med den historiskt etablerade användningen i databasmotorn använder Azure SQL-lagringsmått de äldre enheterna, till exempel KB, MB, GB osv.

Databasrådgivare i Azure SQL Database

Azure SQL Database innehåller databasrådgivare som ger prestandajusteringsrekommendationer för enkla databaser och pooldatabaser. De här rekommendationerna är tillgängliga i Azure-portalen och med hjälp av PowerShell. Du kan också aktivera automatisk justering så att Azure SQL Database automatiskt kan implementera dessa justeringsrekommendationer.

Query Performance Insight i Azure SQL Database

Query Performance Insight visar prestanda i Azure-portalen med de mest tidskrävande och längsta frågorna som körs för enkla databaser och pooldatabaser.

Mått för låg databas och elastisk pool avrundas till noll

Från och med september 2020 kan databaser med extremt låg användning visas i portalen med mindre än den faktiska användningen. På grund av hur telemetri genereras vid konvertering av ett double-värde till närmaste heltal avrundas vissa användningsmängder mindre än 0,5 till 0, vilket orsakar en förlust i kornigheten för den genererade telemetrin.

Till exempel: Överväg ett 1-minutersfönster med följande fyra datapunkter: 0,1, 0,1, 0,1, 0,1, dessa låga värden avrundas ned till 0, 0, 0, 0 och visar ett genomsnitt på 0. Om någon av datapunkterna är större än 0,5, till exempel: 0.1, 0.1, 0.9, 0.1, avrundas de till 0, 0, 1, 0 och visar en genomsnittlig på 0,25.

Generera intelligenta utvärderingar av prestandaproblem

Intelligent Insights för Azure SQL Database och Azure SQL Managed Instance använder inbyggd intelligens för att kontinuerligt övervaka databasanvändningen via artificiell intelligens och upptäcka störande händelser som orsakar dåliga prestanda. Intelligent Insights identifierar automatiskt prestandaproblem med databaser baserat på väntetider, fel eller tidsgränser för frågekörning. När det har identifierats utförs en detaljerad analys av Intelligent Insights som genererar en resurslogg med namnet SQLInsights (som inte är relaterad till Azure Monitor SQL Insights (förhandsversion)). SQLInsights är en intelligent utvärdering av problemen. Den här utvärderingen består av en rotorsaksanalys av databasprestandaproblemet och, om möjligt, rekommendationer för prestandaförbättringar.

Intelligent Insights är en unik funktion i inbyggd Azure-intelligens som ger följande värde:

  • Proaktiv övervakning
  • Skräddarsydda prestandainsikter
  • Tidig identifiering av försämrad databasprestanda
  • Rotorsaksanalys av identifierade problem
  • Rekommendationer för prestandaförbättring
  • Skala ut kapacitet på hundratusentals databaser
  • Positiv inverkan på DevOps-resurser och den totala ägandekostnaden

Aktivera direktuppspelningsexport av mått och resursloggar

Du kan aktivera och konfigurera direktuppspelningsexporten av diagnostiktelemetri till ett av flera mål, inklusive resursloggen Intelligent Insights.

Du konfigurerar diagnostikinställningar för att strömma kategorier av mått och resursloggar för enskilda databaser, pooldatabaser, elastiska pooler, hanterade instanser och instansdatabaser till någon av följande Azure-resurser.

Log Analytics-arbetsyta i Azure Monitor

Du kan strömma mått och resursloggar till en Log Analytics-arbetsyta i Azure Monitor. Data som strömmas här kan användas av SQL Analytics (förhandsversion), som är en molnbaserad övervakningslösning som tillhandahåller intelligent övervakning av dina databaser som innehåller prestandarapporter, aviseringar och rekommendationer för åtgärder. Data som strömmas till en Log Analytics-arbetsyta kan analyseras med andra övervakningsdata som samlas in och du kan även använda andra Azure Monitor-funktioner som aviseringar och visualiseringar.

Kommentar

Azure SQL Analytics (förhandsversion) är en integrering med Azure Monitor, där många övervakningslösningar inte längre är i aktiv utveckling. Övervaka dina SQL-distributioner med SQL Insights (förhandsversion).

Azure Event Hubs

Du kan strömma mått och resursloggar till Azure Event Hubs. Telemetri för direktuppspelning av diagnostik till händelsehubbar för att tillhandahålla följande funktioner:

  • Strömma loggar till loggnings- och telemetrisystem från tredje part

    Strömma alla dina mått och resursloggar till en enda händelsehubb för att skicka loggdata till ett SIEM- eller logganalysverktyg från tredje part.

  • Skapa en anpassad telemetri- och loggningsplattform

    Händelsehubbarens mycket skalbara publiceringsprenumeration gör att du flexibelt kan mata in mått och resursloggar i en anpassad telemetriplattform. Mer information finns i Azure Event Hubs.

  • Visa tjänstens hälsa genom att strömma data till Power BI

    Använd Event Hubs, Stream Analytics och Power BI för att omvandla diagnostikdata till insikter i nära realtid om dina Azure-tjänster. Mer information om den här lösningen finns i Stream Analytics och Power BI: En instrumentpanel för realtidsanalys för strömmande data .

Azure Storage

Strömma mått och resursloggar till Azure Storage. Använd Azure Storage för att arkivera stora mängder diagnostiktelemetri för en bråkdel av kostnaden för de föregående två strömningsalternativen.

Använda utökade händelser

Dessutom kan du använda Utökade händelser för avancerad övervakning och felsökning i SQL Server, Azure SQL Database och Azure SQL Managed Instance. Extended Events är ett "spårningsverktyg" och en händelsearkitektur, som är överlägsen SQL Trace, som gör det möjligt för användare att samla in så mycket eller så lite data som behövs för att felsöka eller identifiera ett prestandaproblem, samtidigt som påverkan på pågående programprestanda minimeras. Extended Events ersätter inaktuella SQL Trace- och SQL Server Profiler-funktioner. Information om hur du använder utökade händelser i Azure SQL Database finns i Utökade händelser i Azure SQL Database. I Azure SQL Database och SQL Managed Instance använder du ett händelsefilmål som finns i Azure Blob Storage.