VM-grootte: best practices voor prestaties voor SQL Server op Azure-VM's
Van toepassing op: SQL Server op Azure VM
In dit artikel vindt u richtlijnen voor vm-grootten in een reeks aanbevolen procedures en richtlijnen voor het optimaliseren van de prestaties voor uw SQL Server op Azure Virtual Machines (VM's).
Er is meestal een afweging tussen optimaliseren voor kosten en optimaliseren voor prestaties. Deze reeks aanbevolen procedures voor prestaties is gericht op het verkrijgen van de beste prestaties voor SQL Server op virtuele Azure-machines. Als uw workload minder veeleisend is, hebt u mogelijk niet elke aanbevolen optimalisatie nodig. Houd rekening met uw prestatiebehoeften, kosten en workloadpatronen wanneer u deze aanbevelingen evalueert.
Zie de andere artikelen in deze reeks voor uitgebreide informatie: Controlelijst, Opslag, Beveiliging, HADR-configuratie, Basislijn verzamelen.
Controlelijst
Bekijk de volgende controlelijst voor een kort overzicht van de aanbevolen procedures voor de VM-grootte die in de rest van het artikel worden behandeld:
- De nieuwe Ebdsv5-serie biedt de hoogste I/O-doorvoer-naar-vCore-verhouding in Azure, samen met een geheugen-naar-vCore-verhouding van 8. Deze reeks biedt de beste prijs-prestaties voor SQL Server-workloads op Azure-VM's. Overweeg deze reeks eerst voor de meeste SQL Server-workloads.
- Gebruik VM-grootten met 4 of meer vCPU's, zoals de E4ds_v5 of hoger.
- Voor de beste prestaties van SQL Server-workloads gebruikt u VM-grootten die voor geheugen zijn geoptimaliseerd.
- De Edsv5-serie , de M-, en de Mv2-serie bieden de optimale geheugen-naar-vCore-verhouding die vereist is voor OLTP-workloads.
- De VM's uit de M-serie bieden de hoogste geheugen-naar-vCore-verhouding in Azure. Houd rekening met deze VM's voor bedrijfskritieke workloads en datawarehouse-workloads.
- Gebruik Azure Marketplace-installatiekopieën om uw virtuele SQL Server-machines te implementeren, omdat de SQL Server-instellingen en opslagopties zijn geconfigureerd voor optimale prestaties.
- Verzamel de prestatiekenmerken van de doelworkload en gebruik deze om de juiste VM-grootte voor uw bedrijf te bepalen.
- Gebruik de aanbevelingshulpprogramma's voor Data Migration Assistant en SKU om de juiste VM-grootte te vinden voor uw bestaande SQL Server-workload.
- Gebruik Azure Data Studio om te migreren naar Azure.
Als u de controlelijst voor VM-grootte wilt vergelijken met de andere, raadpleegt u de uitgebreide controlelijst voor best practices voor prestaties.
Overzicht
Houd bij het maken van een SQL Server op Azure VM zorgvuldig rekening met het type workload dat nodig is. Als u een bestaande omgeving migreert, verzamelt u een prestatiebasislijn om uw SQL Server op Azure VM-vereisten te bepalen. Als dit een nieuwe VIRTUELE machine is, maakt u de nieuwe SQL Server-VM op basis van de vereisten van uw leverancier.
Als u een nieuwe SQL Server-VM maakt met een nieuwe toepassing die is gebouwd voor de cloud, kunt u de grootte van uw SQL Server-VM eenvoudig aanpassen naarmate uw gegevens- en gebruiksvereisten zich ontwikkelen. Start de ontwikkelomgevingen met de lagere D-serie, B-serie of Av2-serie en breid uw omgeving in de loop van de tijd uit.
Gebruik de marketplace-installatiekopieën van de SQL Server-VM met de opslagconfiguratie in de portal. Hierdoor kunt u eenvoudiger de opslaggroepen maken die nodig zijn om de grootte, IOPS en doorvoer te verkrijgen die nodig is voor uw workloads. Het is belangrijk om SQL Server-VM's te kiezen die ondersteuning bieden voor Premium Storage en Premium Storage Caching. Zie het opslagartikel voor meer informatie.
Momenteel biedt de Ebdsv5-serie de hoogste I/O-doorvoer-naar-vCore-verhouding die beschikbaar is in Azure. Als u de I/O-vereisten voor uw SQL Server-workload niet weet, is deze reeks waarschijnlijk het meest geschikt voor uw behoeften. Zie het opslagartikel voor meer informatie.
Notitie
De grotere grootten uit de Ebdsv5-serie (48 vCPU's en groter) bieden ondersteuning voor opslagtoegang met NVMe-functionaliteit. Als u wilt profiteren van deze hoge I/O-prestaties, moet u uw virtuele machine implementeren met NVMe. NVMe-ondersteuning voor SQL Server Marketplace-installatiekopieën komt binnenkort beschikbaar, maar voorlopig moet u SQL Server zelf installeren om te kunnen profiteren van NVMe.
SQL Server-datawarehouse en bedrijfskritieke omgevingen moeten vaak worden geschaald buiten de verhouding van 8 geheugen-naar-vCores. Voor middelgrote omgevingen wilt u mogelijk een verhouding tussen 16 geheugen-naar-vCores en een verhouding van 32 geheugen-naar-vCores kiezen voor grotere datawarehouse-omgevingen.
SQL Server-datawarehouseomgevingen profiteren vaak van de parallelle verwerking van grotere machines. Daarom zijn de M-serie en de Mv2-serie goede opties voor grotere datawarehouse-omgevingen.
Gebruik de vCPU- en geheugenconfiguratie van uw bronmachine als basislijn voor het migreren van een huidige on-premises SQL Server-database naar SQL Server op virtuele Azure-machines. Als u Software Assurance hebt, profiteert u van Azure Hybrid Benefit om uw licenties naar Azure te brengen en te besparen op sql Server-licentiekosten.
Geoptimaliseerd geheugen
De grootten van de voor het geheugen geoptimaliseerde virtuele machines zijn een primair doel voor SQL Server-VM's en de aanbevolen keuze van Microsoft. De voor geheugen geoptimaliseerde virtuele machines bieden sterkere geheugen-naar-CPU-verhoudingen en opties voor middelgrote tot grote caches.
Ebdsv5-serie
De Ebdsv5-serie is een nieuwe reeks vm's die zijn geoptimaliseerd voor geheugen en die de hoogste doorvoer voor externe opslag bieden die beschikbaar is in Azure. Deze VM's hebben een geheugen-naar-vCore-verhouding van 8, waardoor ze, samen met de hoge I/O-doorvoer, ideaal zijn voor SQL Server-workloads. De VM's uit de Ebdsv5-serie bieden de beste prijs-prestaties voor SQL Server-workloads die worden uitgevoerd op virtuele Azure-machines. We raden ze ten zeerste aan voor de meeste SQL Server-workloads in uw productieomgeving.
Edsv5-serie
De Edsv5-serie is ontworpen voor geheugenintensieve toepassingen en is ideaal voor SQL Server-workloads die geen zo hoge I/O-doorvoer vereisen als de Ebdsv5-serie biedt. Deze VM's hebben een grote lokale opslag-SSD-capaciteit, tot 672 GiB ram-geheugen en zeer hoge lokale en externe opslagdoorvoer. Er is een bijna consistente 8 GiB-geheugen per vCore op de meeste van deze virtuele machines, wat ideaal is voor de meeste SQL Server-workloads.
De grootste virtuele machine in deze groep is de Standard_E104ids_v5 die 104 vCores en 672 GiBs aan geheugen biedt. Deze virtuele machine is opmerkelijk omdat deze is geïsoleerd , wat betekent dat deze gegarandeerd de enige virtuele machine is die op de host wordt uitgevoerd en daarom is geïsoleerd van andere workloads van klanten. Dit heeft een geheugen-naar-vCore-verhouding die lager is dan wat wordt aanbevolen voor SQL Server, dus deze mag alleen worden gebruikt als isolatie is vereist.
De virtuele machines uit de Edsv5-serie ondersteunen premium-opslag en premium-opslagcaching.
ECadsv5-serie
De grootten van virtuele machines uit de ECadsv5-serie zijn voor geheugen geoptimaliseerde Azure Confidential-VM's met een tijdelijke schijf. Bekijk vertrouwelijke VM's voor informatie over de beveiligingsvoordelen van vertrouwelijke Azure-VM's.
Omdat de beveiligingsfuncties van Azure Confidential VM's prestatieoverhead kunnen veroorzaken, test u uw workload en selecteert u een VM-grootte die voldoet aan uw prestatievereisten.
M- en Mv2-serie
De M-serie biedt vCore-aantallen en geheugen voor een aantal van de grootste SQL Server-workloads.
De Mv2-serie heeft het hoogste aantal vCores en geheugen en wordt aanbevolen voor bedrijfskritieke workloads en datawarehouse-workloads. Mv2-serie exemplaren zijn vm-grootten die zijn geoptimaliseerd voor geheugen en bieden ongeëvenaarde rekenprestaties ter ondersteuning van grote in-memory databases en workloads met een hoge geheugen-naar-CPU-verhouding die perfect is voor relationele databaseservers, grote caches en analyse in het geheugen.
Enkele van de functies van de M- en Mv2-serie die aantrekkelijk zijn voor SQL Server-prestaties, zijn premium-opslag - en premiumopslagcacheondersteuning , ultraschijfondersteuning en schrijfversnelling.
Algemeen gebruik
De grootten van virtuele machines voor algemeen gebruik zijn ontworpen om evenwichtige geheugen-naar-vCore-verhoudingen te bieden voor kleinere werkbelastingen op invoerniveau, zoals ontwikkeling en testen, webservers en kleinere databaseservers.
Vanwege de kleinere geheugen-naar-vCore-verhoudingen met de virtuele machines voor algemeen gebruik is het belangrijk om de prestatiemeteritems op basis van geheugen zorgvuldig te bewaken om ervoor te zorgen dat SQL Server het cachegeheugen dat nodig is, kan ophalen. Zie de basislijn voor geheugenprestaties voor meer informatie.
Omdat de aanbeveling voor productieworkloads een geheugen-naar-vCore-verhouding van 8 is, is de minimaal aanbevolen configuratie voor een VM voor algemeen gebruik met SQL Server 4 vCPU en 32 GiB aan geheugen.
Ddsv5-serie
De Ddsv5-serie biedt een eerlijke combinatie van vCPU, geheugen en tijdelijke schijf, maar met kleinere ondersteuning voor geheugen naar vCore.
De Ddsv5-VM's bevatten lagere latentie en lokale opslag met een hogere snelheid.
Deze machines zijn ideaal voor sql- en app-implementaties naast elkaar die snelle toegang tot tijdelijke opslag en relationele relationele databases van afdelingen vereisen. Er is een standaardverhouding tussen geheugen en vCore van 4 voor alle virtuele machines in deze serie.
Daarom is het raadzaam om de D8ds_v5 te gebruiken als de starter-VM in deze serie, die 8 vCores en 32 GiBs aan geheugen heeft. De grootste machine is de D96ds_v5, die 96 vCores en 256 GiBs aan geheugen heeft.
Virtuele machines uit de Ddsv5-serie ondersteunen Premium Storage en Premium Storage Caching.
Notitie
De Ddsv5-serie heeft niet de geheugen-naar-vCore-verhouding van 8 die wordt aanbevolen voor SQL Server-workloads. Overweeg daarom alleen deze virtuele machines te gebruiken voor kleine toepassingen en ontwikkelworkloads.
DCadsv5-serie
De grootten van virtuele machines uit de DCadsv5-serie zijn algemene Azure Confidential-VM's met tijdelijke schijf. Bekijk vertrouwelijke VM's voor informatie over de beveiligingsvoordelen van vertrouwelijke Azure-VM's.
Omdat de beveiligingsfuncties van Azure Confidential VM's prestatieoverhead kunnen veroorzaken, test u uw workload en selecteert u een VM-grootte die voldoet aan uw prestatievereisten.
B-serie
De grootten van virtuele machines uit de B-serie zijn ideaal voor workloads die geen consistente prestaties nodig hebben, zoals proof of concept en zeer kleine toepassings- en ontwikkelingsservers.
De meeste burstable vm-grootten uit de B-serie hebben een geheugen-naar-vCore-verhouding van 4. De grootste van deze machines is de Standard_B20ms met 20 vCores en 80 GiB geheugen.
Deze reeks is uniek omdat de apps de mogelijkheid hebben om te bursten tijdens kantooruren met burstable-tegoeden die variëren op basis van de grootte van de machine.
Wanneer het tegoed is uitgeput, keert de VM terug naar de prestaties van de basislijnmachine.
Het voordeel van de B-serie is de rekenbesparingen die u kunt bereiken in vergelijking met de andere VM-grootten in andere reeksen, met name als u de verwerkingskracht de hele dag spaarzaam nodig hebt.
Deze reeks biedt ondersteuning voor Premium Storage, maar biedt geen ondersteuning voorpremium-opslagcache.
Notitie
De burstable B-serie heeft niet de geheugen-naar-vCore-verhouding van 8 die wordt aanbevolen voor SQL Server-workloads. Overweeg daarom deze virtuele machines alleen te gebruiken voor kleinere toepassingen, webservers en ontwikkelworkloads.
Av2-serie
De AV2-serie-VM's zijn het meest geschikt voor workloads op invoerniveau, zoals ontwikkeling en test, webservers met weinig verkeer, kleine tot middelgrote app-databases en proof-of-concepts.
Alleen de Standard_A2m_v2 (2 vCores en 16GiBs geheugen), Standard_A4m_v2 (4 vCores en 32GiBs geheugen) en de Standard_A8m_v2 (8 vCores en 64GiBs geheugen) hebben een goede geheugen-naar-vCore-verhouding van 8 voor deze top drie virtuele machines.
Deze virtuele machines zijn beide goede opties voor kleinere ontwikkel- en test-SQL Server-machines.
De 8 vCore-Standard_A8m_v2 kan ook een goede optie zijn voor kleine toepassingen en webservers.
Notitie
De Av2-serie biedt geen ondersteuning voor Premium Storage en wordt daarom niet aanbevolen voor productie-SQL Server-workloads, zelfs niet voor de virtuele machines met een geheugen-naar-vCore-verhouding van 8.
Geoptimaliseerde opslag
De voor opslag geoptimaliseerde VM-grootten zijn bedoeld voor specifieke gebruiksvoorbeelden . Deze virtuele machines zijn speciaal ontworpen met geoptimaliseerde schijfdoorvoer en IO.
Lsv2-serie
De Lsv2-serie biedt hoge doorvoer, lage latentie en lokale NVMe-opslag. De VM's uit de Lsv2-serie zijn geoptimaliseerd voor het gebruik van de lokale schijf op het knooppunt dat rechtstreeks aan de VIRTUELE machine is gekoppeld in plaats van duurzame gegevensschijven te gebruiken.
Deze virtuele machines zijn sterke opties voor big data-, datawarehouse-, rapportage- en ETL-workloads. De hoge doorvoer en IOPS van de lokale NVMe-opslag is een goed gebruiksvoorbeeld voor het verwerken van bestanden die worden geladen in uw database en andere scenario's waarin de gegevens opnieuw kunnen worden gemaakt vanuit het bronsysteem of andere opslagplaatsen, zoals Azure Blob Storage of Azure Data Lake. VM's uit de Lsv2-serie kunnen de schijfprestaties gedurende maximaal 30 minuten tegelijk bursten.
Deze virtuele machines zijn van 8 tot 80 vCPU's met 8 GiB geheugen per vCPU en voor elke 8 vCPU's is er 1,92 TB NVMe SSD. Dit betekent voor de grootste VM van deze serie, de L80s_v2, er 80 vCPU en 640 BiB geheugen met 10x1,92 TB NVMe-opslag. Er is een consistente geheugen-naar-vCore-verhouding van 8 op al deze virtuele machines.
De NVMe-opslag is kortstondig, wat betekent dat gegevens verloren gaan op deze schijven als u de toewijzing van uw virtuele machine ongedaan maakt of als deze wordt verplaatst naar een andere host voor herstel van de service.
De Lsv2- en Ls-serie ondersteunen premium-opslag, maar geen premium-opslagcaching. Het maken van een lokale cache om IOPS te verhogen, wordt niet ondersteund.
Waarschuwing
Het opslaan van uw gegevensbestanden in de kortstondige NVMe-opslag kan leiden tot gegevensverlies wanneer de toewijzing van de virtuele machine ongedaan wordt gemaakt.
Beperkte vCores
Hoog presterende SQL Server-workloads hebben vaak grotere hoeveelheden geheugen, IOPS en doorvoer nodig zonder het hogere aantal vCores.
De meeste OLTP-workloads zijn toepassingsdatabases die worden aangestuurd door grote aantallen kleinere transacties. Met OLTP-workloads wordt slechts een kleine hoeveelheid gegevens gelezen of gewijzigd, maar de volumes van transacties die worden aangestuurd door gebruikersaantallen zijn veel hoger. Het is belangrijk om het SQL Server-geheugen beschikbaar te maken voor cacheplannen, onlangs geopende gegevens op te slaan voor prestaties en ervoor te zorgen dat fysieke leesbewerkingen snel in het geheugen kunnen worden gelezen.
Deze OLTP-omgevingen hebben hogere hoeveelheden geheugen, snelle opslag en de I/O-bandbreedte nodig die nodig is om optimaal te kunnen presteren.
Om dit prestatieniveau te behouden zonder de hogere sql Server-licentiekosten, biedt Azure VM-grootten met beperkte vCPU-aantallen.
Dit helpt de licentiekosten te beheren door de beschikbare vCores te verminderen terwijl dezelfde geheugen-, opslag- en I/O-bandbreedte van de bovenliggende virtuele machine behouden blijft.
Het aantal vCPU's kan worden beperkt tot een halve tot een kwart van de oorspronkelijke VM-grootte. Het verminderen van de vCores die beschikbaar zijn voor de virtuele machine, zorgt voor hogere geheugen-naar-vCore-verhoudingen, maar de rekenkosten blijven hetzelfde.
Deze nieuwe VM-grootten hebben een achtervoegsel waarmee het aantal actieve vCPU's wordt opgegeven om ze gemakkelijker te identificeren.
Voor de M64-32ms zijn bijvoorbeeld slechts 32 SQL Server-vCores met het geheugen, I/O en de doorvoer van de M64ms en de M64-16ms licenties vereist, maar 16 vCores. Hoewel de M64-16 ms een kwart van de SQL Server-licentiekosten van de M64ms heeft, zijn de rekenkosten van de virtuele machines hetzelfde.
Notitie
- Middelgrote tot grote datawarehouse-workloads kunnen nog steeds profiteren van beperkte vCore-VM's, maar datawarehouse-workloads worden vaak gekenmerkt door minder gebruikers en processen die grotere hoeveelheden gegevens aanpakken via queryplannen die parallel worden uitgevoerd.
- De rekenkosten, waaronder besturingssysteemlicenties, blijven hetzelfde als de bovenliggende virtuele machine.
Volgende stappen
Zie de andere artikelen in deze reeks aanbevolen procedures voor meer informatie:
Zie Beveiligingsoverwegingen voor SQL Server op virtuele Azure-machines voor aanbevolen beveiligingsprocedures.
Bekijk andere artikelen over virtuele SQL Server-machines in SQL Server op Azure Virtual Machines Overview. Als u vragen hebt over virtuele machines met SQL Server, raadpleegt u Veelgestelde vragen.