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:SQL Server op Azure VM-
In dit artikel vindt u informatie over het verzamelen van een prestatiebasislijn als een reeks aanbevolen procedures en richtlijnen voor het optimaliseren van de prestaties voor uw SQL Server op Azure Virtual Machines (VM's).
Er is doorgaans 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.
Overzicht
Voor een prescriptieve benadering verzamelt u prestatiemeteritems met behulp van PerfMon/LogMan en legt u wachtstatistieken van SQL Server vast om algemene druk en mogelijke knelpunten van de bronomgeving beter te begrijpen.
Beginnen met het verzamelen van de CPU, het geheugen, IOPS, doorvoeren latentie van de bronworkload op piektijden volgens de controlelijst voor toepassingsprestaties.
Verzamel gegevens tijdens piekuren, zoals workloads tijdens uw gebruikelijke werkdag, maar ook andere processen voor hoge belasting, zoals verwerking van het einde van de dag en etL-workloads in het weekend. Overweeg om uw resources op te schalen voor atypisch zware workloads, zoals de verwerking aan het einde van het kwartaal, en schaal deze vervolgens weer omlaag wanneer de workload is voltooid.
Gebruik de prestatieanalyse om de VM-grootte te selecteren die kan worden geschaald naar de prestatievereisten van uw workload.
Opslag
De prestaties van SQL Server zijn sterk afhankelijk van het I/O-subsysteem en de opslagprestaties worden gemeten door IOPS en doorvoer. Tenzij uw database in het fysieke geheugen past, brengt SQL Server voortdurend databasepagina's binnen en uit de buffergroep. De gegevensbestanden voor SQL Server moeten anders worden behandeld. Toegang tot logboekbestanden is opeenvolgend, behalve wanneer een transactie moet worden teruggedraaid waar gegevensbestanden, inclusief tempdb
, willekeurig worden geopend. Als u een traag I/O-subsysteem hebt, kunnen uw gebruikers prestatieproblemen ondervinden, zoals trage reactietijden en taken die niet worden voltooid vanwege time-outs.
De virtuele Azure Marketplace-machines bevatten logboekbestanden op een fysieke schijf die standaard gescheiden is van de gegevensbestanden. Het aantal en de grootte van de tempdb
gegevensbestanden voldoen aan best practices en zijn bestemd voor het tijdelijke D:\
station.
De volgende Prestatiemeteritems kunnen helpen bij het valideren van de IO-doorvoer die is vereist voor uw SQL Server:
- \LogicalDisk\Disk Reads/Sec (read IOPS)
- \LogicalDisk\Schijfbewerkingen/Sec (write IOPS)
-
\LogicalDisk\Disk Read Bytes/Sec (leesdoorvoervereisten voor de gegevens-, logboek- en
tempdb
-bestanden) -
\LogicalDisk\Disk Write Bytes/Sec (vereisten voor schrijfdoorvoer voor de gegevens-, logboek- en
tempdb
-bestanden)
Met behulp van IOPS en doorvoervereisten op piekniveaus evalueert u VM-grootten die overeenkomen met de capaciteit van uw metingen.
Als uw workload 20.000 lees-IOPS en 10.000 schrijf-IOPS vereist, kunt u kiezen voor E16s_v3 (met maximaal 32.000 IOPS in cache en 25.600 IOPS zonder cache) of M16_s (met maximaal 20.000 IOPS in cache en 10.000 IOPS zonder cache) met 2 P30-schijven die zijn gestreept met Opslagruimten.
Zorg ervoor dat u zowel de doorvoer- als de IOPS-vereisten van de workload begrijpt, omdat VM's verschillende schaallimieten hebben voor IOPS en doorvoer.
Geheugen
Houd zowel extern geheugen bij dat wordt gebruikt door het besturingssysteem als het geheugen dat intern door SQL Server wordt gebruikt. Het identificeren van druk voor een van beide onderdelen helpt bij het bepalen van de grootte van virtuele machines en het identificeren van mogelijkheden voor afstemming.
De volgende Prestatiemeteritems kunnen helpen bij het valideren van de geheugenstatus van een virtuele SQL Server-machine:
- \Memory\Beschikbare MB
- \SQLServer:Memory Manager\Target Server Memory (KB)
- \SQLServer:Memory Manager\Total Server Memory (KB)
- \SQLServer:Buffer Manager\Luie schrijfbewerkingen per seconde
- \SQLServer:BufferBeheer\Levensverwachting van pagina's
Berekenen
Compute in Azure wordt anders beheerd dan on-premises. On-premises servers zijn gebouwd voor enkele jaren zonder een upgrade vanwege de beheeroverhead en de kosten voor het verkrijgen van nieuwe hardware. Virtualisatie vermindert sommige van deze problemen, maar toepassingen zijn geoptimaliseerd om optimaal te profiteren van de onderliggende hardware, wat betekent dat elke belangrijke wijziging in het resourceverbruik de volledige fysieke omgeving opnieuw moet verdelen.
Dit is geen uitdaging in Azure waarbij een nieuwe virtuele machine op een andere reeks hardware en zelfs in een andere regio eenvoudig te bereiken is.
In Azure wilt u de resources van virtuele machines zo goed mogelijk benutten. Daarom moeten Azure virtuele machines worden geconfigureerd om het gemiddelde CPU-gebruik zo hoog mogelijk te houden, zonder de workload te beïnvloeden.
De volgende Prestatiemeteritems kunnen helpen bij het valideren van de rekenstatus van een virtuele SQL Server-machine:
- \Processorinformatie(_Totaal)% Processortijd
- \Process(sqlservr)% Processor Time
Notitie
Probeer in het ideale geval 80% van uw computercapaciteit te gebruiken, met pieken boven de 90%, maar niet tot 100% voor enige tijd. In principe wilt u alleen de rekenkracht inrichten die de toepassing nodig heeft en wilt u vervolgens omhoog of omlaag schalen naarmate het bedrijf dat nodig heeft.
Volgende stappen
Zie de andere artikelen in deze reeks aanbevolen procedures voor meer informatie:
Zie Beveiligingsoverwegingen voor SQL Server op Azure Virtual Machinesvoor aanbevolen beveiligingsprocedures.
Bekijk andere artikelen over sql Server Virtual Machine op SQL Server op Azure Virtual Machines Overview. Als u vragen hebt over virtuele SQL Server-machines, raadpleegt u de Veelgestelde vragen.