Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:Azure SQL Managed Instance
Maak een prestatiebasislijn om de prestaties van uw workload in een SQL Managed Instance te vergelijken met uw oorspronkelijke workload die wordt uitgevoerd op SQL Server.
Een basislijn maken
In het ideale geval zijn de prestaties vergelijkbaar of beter na de migratie, dus het is belangrijk om prestatiewaarden van de basislijn op de bron te meten en vast te leggen en deze vervolgens te vergelijken met de doelomgeving. Een prestatiebasislijn is een set parameters waarmee uw gemiddelde workload voor uw bron wordt gedefinieerd.
Selecteer een set query's die belangrijk zijn voor en vertegenwoordiger van uw bedrijfsworkload. Meet en documenteer de minimale/gemiddelde/maximale duur en het CPU-gebruik voor deze query's, evenals metrische prestatiegegevens op de bronserver, zoals gemiddeld/max CPU-gebruik, gemiddelde/max schijf-IO-latentie, doorvoer, IOPS, gemiddelde /maximale levensduur van pagina's en gemiddelde maximale grootte van tempdb.
De volgende resources kunnen helpen bij het definiëren van een prestatiebasislijn:
- CPU-gebruik bewaken
- Bewaak het geheugengebruik en bepaal de hoeveelheid geheugen die door verschillende onderdelen wordt gebruikt, zoals buffergroep, plancache, kolomopslaggroep, In-Memory OLTP, enzovoort. Daarnaast moet u de gemiddelde en piekwaarden van het prestatiemeteritem Pagina levensverwachting van het geheugen vinden.
- Bewaak het IO-gebruik van de schijf op het SQL Server-bronexemplaar met behulp van de sys.dm_io_virtual_file_stats weergave of prestatiecounters.
- Bewaak workload- en queryprestaties door dynamische beheerweergaven (of Query Store te bekijken als u migreert vanuit SQL Server 2016 en hoger). Identificeer de gemiddelde duur en het CPU-gebruik van de belangrijkste query's in uw workload.
Prestatieproblemen op de sql-bronserver moeten vóór de migratie worden opgelost. Het migreren van bekende problemen naar een nieuw systeem kan onverwachte resultaten veroorzaken en een prestatievergelijking ongeldig maken.
Prestaties vergelijken
Nadat u een basislijn hebt gedefinieerd, vergelijkt u de prestaties van vergelijkbare workloads op de doel-SQL-beheerde instantie. Voor nauwkeurigheid is het belangrijk dat de sql Managed Instance-omgeving zoveel mogelijk vergelijkbaar is met de SQL Server-omgeving.
Er zijn verschillen in de infrastructuur van SQL Managed Instance die het onwaarschijnlijk maken dat de prestaties exact overeenkomen. Sommige query's worden mogelijk sneller uitgevoerd dan verwacht, terwijl andere mogelijk trager zijn. Het doel van deze vergelijking is om te controleren of de prestaties van de werkbelasting in het beheerde exemplaar overeenkomen met de prestaties van SQL Server (gemiddeld) en om kritieke query's te identificeren met prestaties die niet overeenkomen met de oorspronkelijke prestaties.
Prestatievergelijking resulteert waarschijnlijk in de volgende resultaten:
Workloadprestaties op het beheerde exemplaar zijn vergelijkbaar met of beter dan de workloadprestaties op uw bron SQL Server. In dit geval bevestigt u dat de migratie is geslaagd.
De meeste prestatieparameters en query's in de workload presteren zoals verwacht, met enkele uitzonderingen die leiden tot verminderde prestaties. In dit geval identificeert u de verschillen en hun belang. Als er enkele belangrijke query's zijn met verminderde prestaties, onderzoekt u of de onderliggende SQL-plannen zijn gewijzigd of dat query's resourcelimieten bereiken. U kunt dit verhelpen door enkele aanwijzingen toe te passen op cruciale queries (bijvoorbeeld het compatibiliteitsniveau wijzigen, legacy-kardinaliteitsschatting) rechtstreeks of met behulp van uitvoeringsrichtlijnen. Zorg ervoor dat statistieken en indexen up-to-date en gelijkwaardig zijn in beide omgevingen.
De meeste query's zijn langzamer op een beheerd exemplaar vergeleken met uw SQL Server-bronexemplaren. Probeer in dit geval de hoofdoorzaken van het verschil te identificeren, zoals het bereiken van een resourcelimiet , zoals I/O-, geheugen- of frequentielimieten voor instantielogboeken. Als er geen resourcelimieten zijn die het verschil veroorzaken, wijzigt u het compatibiliteitsniveau van de database of wijzigt u de database-instellingen, zoals een schatting van verouderde kardinaliteit en voert u de test opnieuw uit. Bekijk de aanbevelingen van de beheerde instantie of de Query Store-weergaven om de query's te identificeren met verminderde prestaties.
SQL Managed Instance heeft een ingebouwde functie voor automatische correctie van plannen die standaard is ingeschakeld. Deze functie zorgt ervoor dat query's die in het verleden prima werkten, in de toekomst niet afnemen. Als deze functie niet is ingeschakeld, voert u de workload uit met de oude instellingen, zodat SQL Managed Instance de prestatiebasislijn kan leren. Schakel vervolgens de functie in en voer de workload opnieuw uit met de nieuwe instellingen.
Breng wijzigingen aan in de parameters van uw test of voer een upgrade uit naar hogere servicelagen om de optimale configuratie te bereiken voor de prestaties van de workload die aan uw behoeften voldoen.
Prestaties bewaken
SQL Managed Instance biedt geavanceerde hulpprogramma's voor bewaking en probleemoplossing. U moet deze hulpprogramma's gebruiken om de prestaties van uw exemplaar te bewaken. Enkele van de belangrijkste metrische gegevens die moeten worden bewaakt, zijn:
- CPU-gebruik op de instance om te bepalen of het aantal vCores dat u hebt ingericht goed past bij uw workload.
- De levensverwachting van pagina's op uw beheerde exemplaar om te bepalen of u meer geheugen nodig hebt.
- Statistieken zoals
INSTANCE_LOG_GOVERNORofPAGEIOLATCHdie io-problemen met opslag identificeren, met name op de laag Algemeen gebruik, waarbij u mogelijk de toewijzing van bestanden moet vooraf toewijzen om betere IO-prestaties te krijgen.
Overwegingen
Houd bij het vergelijken van de prestaties rekening met de volgende vereisten:
Instellingen komen overeen tussen de bron en het doel. Controleer of verschillende exemplaren, databases en
tempdbinstellingen gelijkwaardig zijn tussen de twee omgevingen. Verschillen in configuratie, compatibiliteitsniveaus, versleutelingsinstellingen, traceringsvlaggen, enzovoort, kunnen allemaal de prestaties verstoren.Opslag wordt geconfigureerd volgens de aanbevolen procedures. Voor algemeen gebruik moet u bijvoorbeeld mogelijk de grootte van de bestanden vooraf toewijzen om de prestaties te verbeteren.
Er zijn belangrijke omgevingsverschillen die de prestatieverschillen tussen een beheerd exemplaar en SQL Server kunnen veroorzaken. Identificeer risico's die relevant zijn voor uw omgeving die kunnen bijdragen aan een prestatieprobleem.
Query store en automatisch afstemmen moeten zijn ingeschakeld voor uw met SQL beheerde exemplaar, omdat u hiermee de prestaties van de workload kunt meten en mogelijke prestatieproblemen automatisch kunt verhelpen.
Verwante inhoud
- Hoe kunt u bepalen waarom de prestaties van workloads in Azure SQL Managed Instance afwijken van SQL Server?
- Belangrijkste oorzaken van prestatieverschillen tussen SQL Managed Instance en SQL Server
- Best practices en overwegingen voor opslagprestaties voor Azure SQL Managed Instance (algemeen gebruik)
- Realtime prestatiebewaking voor Azure SQL Managed Instance (dit is gearchiveerd, is dit het beoogde doel?)