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
Azure SQL Managed Instance
U kunt resource governor gebruiken om het resourceverbruik van database-engine te beheren en beleidsregels af te dwingen voor gebruikersworkloads. Met Resource Governor kunt u de hoeveelheid CPU, geheugen en fysieke I/O die gebruikersqueryworkloads kunnen gebruiken, reserveren of beperken. U kunt ook het resourceverbruiksgedrag van elke query aanpassen, zoals de mate van parallelle uitvoering of de grootte van een geheugentoekenning.
Vanaf SQL Server 2025 (17.x) Preview kunt u resource governor gebruiken om limieten af te dwingen voor de totale hoeveelheid ruimte die tempdb
wordt verbruikt door een toepassing of gebruikersworkload. Zie Tempdb-ruimteresourcebeheer voor meer informatie.
Zie Tutorial: Resource Governor configuration examples and best practicesvoor voorbeelden van configuratie en bewaking en voor meer informatie over best practices voor Resource Governor.
Notitie
Hoewel Azure SQL Database gebruikmaakt van resource governor (onder andere technieken) voor het beheren van resources, wordt de gebruikersconfiguratie van resourcegroepen en workloadgroepen in Azure SQL Database niet ondersteund.
Azure Synapse Analytics heeft via de functie Workloadclassificatieeen andere implementatie van een vergelijkbaar gedrag in resourcebeheer.
Voordelen van resource governor
Met Resource Governor kunt u workloads en resources van de database-engine beheren door reserveringen en limieten voor het resourceverbruik door aanvragen op te geven. In de resource governor-context is een workload een set query's (aanvragen) die kunnen en moeten worden behandeld als één entiteit. Alle query's die door een bepaalde toepassing worden uitgevoerd, kunnen bijvoorbeeld worden beschouwd als een workload. Hoewel dit geen vereiste is, hoe uniformer het resourcegebruikspatroon van een workload is, hoe meer voordeel u waarschijnlijk zult hebben van resource governor.
Als er meerdere afzonderlijke workloads aanwezig zijn op dezelfde server, kunt u met Resource Governor resources anders toewijzen aan verschillende workloads, op basis van de limieten die u opgeeft.
Enkele van de gebruiksscenario's die door Resource Governor worden ondersteund, zijn:
- Multitenancy en resource-isolatie bieden op één exemplaar van SQL Server die meerdere clientworkloads leveren. Dat wil gezegd: u kunt de beschikbare resources op een server verdelen over de workloads en de problemen minimaliseren die kunnen optreden wanneer workloads concurreren voor resources.
- Voorzien in voorspelbare prestaties en ondersteuning van SLA's voor workloads in een omgeving met meerdere workloads en meerdere gebruikers.
- U kunt runaway-query's isoleren en beperken of I/O-resources beperken voor I/O-intensieve bewerkingen die het I/O-subsysteem kunnen verzadigen en andere workloads negatief kunnen beïnvloeden.
- Voeg fijnmazige resourcetracking toe voor terugstortingen voor resourcegebruik en bied voorspelbare facturering aan de gebruikers van serverresources.
Interoperabiliteit en beperkingen
- Resource governor kan worden gebruikt met AlwaysOn-beschikbaarheidsgroepen en failoverclusterexemplaren. De volgende overwegingen zijn van toepassing:
- Wanneer deze wordt gebruikt in SQL Server, moet resource governor worden geconfigureerd op elk SQL Server-exemplaar dat als host fungeert voor een beschikbaarheidsgroep. De resource governor-configuratie wordt niet doorgegeven van de primaire replica van de beschikbaarheidsgroep naar secundaire replica's. We raden u aan dezelfde resource governor-configuratie te gebruiken voor alle SQL Server Database Engine-exemplaren die beschikbaarheidsreplica's hosten. Dit zorgt voor consistent gedrag wanneer failovers van beschikbaarheidsgroepen optreden.
- Wanneer de resource governor-configuratie wordt gebruikt in Azure SQL Managed Instance, wordt de configuratie van resource governor doorgegeven van de primaire replica naar alle secundaire replica's, omdat de
master
database van de primaire replica wordt gerepliceerd naar alle secundaire replica's. Dit omvat secundaire systemen voor hoge beschikbaarheid en geo-replicatie. Zie Resource Governor voor meer informatie. - Als u ingesloten beschikbaarheidsgroepen gebruikt, raadpleegt u Interacties met andere functies voor meer informatie.
- Resourcebeheer is beperkt tot de SQL Server Database Engine. Resource governor kan niet worden gebruikt voor Analysis Services, Integration Services en Reporting Services.
- Resource governor biedt geen workloadbewaking of workloadbeheer voor meerdere SQL Server-exemplaren.
- Zeer korte query's, zoals query's in sommige OLTP-workloads, gebruiken mogelijk niet lang genoeg CPU om cpu-bandbreedtecontroles toe te passen. Dit kan statistieken over CPU-gebruik scheeftrekken en de effectiviteit van CPU-resourcebeheer beperken.
- De mogelijkheid om fysieke I/O te beheren is alleen van toepassing op gebruikersbewerkingen en niet op systeemtaken. Systeemtaken voeren transactielogboek, checkpunt en luie schrijver I/O-bewerkingen uit. Resource governor beheert de fysieke lees-I/O-bewerkingen van gebruikers, maar niet de schrijf-I/O die door systeemtaken wordt uitgevoerd.
- U kunt geen besturingselementen voor resourcebeheer wijzigen voor de
internal
resource pool en de workloadgroep.
Resourceconcepten
De volgende drie concepten zijn essentieel voor het begrijpen en gebruiken van resource governor:
-
resourcegroep. Een resourcegroep vertegenwoordigt een container voor de fysieke resources van de server, zoals CPU, geheugen en I/O. Er zijn altijd twee ingebouwde resourcegroepen,
internal
endefault
, aanwezig. Resource governor biedt ook ondersteuning voor door de gebruiker gedefinieerde resourcegroepen. Afhankelijk van de configuratie kunnen resources in een resourcegroep worden gedeeld met andere pools of gereserveerd. Voor meer informatie, zie Resource Governor-resourcepool. -
workloadgroep. Een workloadgroep vertegenwoordigt een container voor sessies die op dezelfde manier worden geclassificeerd. Met een workloadgroep kunt u het verbruik van sessie- en aanvraagresources aggregeren en aanvraagbeleid definiëren. Elke workloadgroep bevindt zich in een resourcepool. Twee ingebouwde workloadgroepen,
internal
endefault
, bestaan altijd en worden toegewezen aan respectievelijk deinternal
endefault
resourcepools. Resource governor ondersteunt ook door de gebruiker gedefinieerde workloadgroepen. Voor meer informatie, zie Resource Governor-werklastgroep. - classificatie. Het classificatieproces wijst binnenkomende sessies toe aan een workloadgroep op basis van de kenmerken van de sessie, zoals aanmeldingsnaam of programmanaam, met behulp van uw aangepaste classificatielogica. Zodra een sessie is geclassificeerd in een workloadgroep, zijn alle aanvragen die op die sessie worden uitgevoerd, onderworpen aan het groepsbeleid voor werkbelastingen. U definieert de classificatielogica door een scalaire door de gebruiker gedefinieerde functie te schrijven, een classificatiefunctie genaamd. Zie Resource Governor-classificatiefunctievoor meer informatie.
Notitie
Resource governor legt geen controles op voor een toegewezen beheerdersverbinding (DAC). DAC-queries worden altijd uitgevoerd in de internal
-werklastgroep en resourcegroep.
In de volgende afbeelding ziet u resource governor-onderdelen en hun relatie met elkaar in de database-engine. Vanuit het oogpunt van verwerking is de vereenvoudigde stroom als volgt:
- Er is een inkomende verbinding voor een sessie, (sessie 1 van
n
). - De sessie is geclassificeerd.
- Met behulp van het classificatieresultaat wordt de sessie toegewezen aan een workloadgroep, bijvoorbeeld
Group 4
. - De workloadgroep dwingt zijn beleidsregels af voor alle aanvragen en gebruikt de resourcepool waaraan deze is gekoppeld, bijvoorbeeld
Pool 2
. - De resourcegroep biedt en beperkt de resources die nodig zijn voor de toepassing, bijvoorbeeld
Application 3
.
Resource governor taken
Taakbeschrijving | Artikel |
---|---|
Voorbeelden van configuratie weergeven | Resource Governor-configuratievoorbeelden en best practices |
Resource governor inschakelen | Resource Governor inschakelen |
Resource governor uitschakelen | Resource Governor uitschakelen |
Een resourcegroep maken, wijzigen en verwijderen | Resource Governor-resourcegroep |
Een workloadgroep maken, wijzigen, verplaatsen en verwijderen | Resource Governor-werkloadgroep |
Een door de gebruiker gedefinieerde classificatiefunctie maken en testen | De classificatiefunctie Resource Governor |
Resource Governor configureren met behulp van een sjabloon | Resource Governor configureren met behulp van een sjabloon |
Eigenschappen van resource governor weergeven | eigenschappen van resource governor weergeven en wijzigen |
Een limiet instellen voor tempdb ruimteverbruik |
Tempdb-ruimteresourcebeheer |