Resource GovernorResource Governor

In questo argomento si applica a: SìSQL ServernonDatabase SQL di AzurenonAzure SQL Data Warehouse non Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse SQL ServerSQL Server La funzionalità Resource Governor consente di gestire il carico di lavoro e l'uso delle risorse di sistema in SQL ServerSQL Server. SQL ServerSQL Server Resource Governor is a feature than you can use to manage SQL ServerSQL Server workload and system resource consumption. Resource Governor permette di specificare i limiti sulla quantità di CPU, I/O fisico e memoria che le richieste dell'applicazione in ingresso possono utilizzare.Resource Governor enables you to specify limits on the amount of CPU, physical IO, and memory that incoming application requests can use.

Vantaggi di Resource GovernorBenefits of Resource Governor

Resource Governor consente di gestire i carichi di lavoro e le risorse di SQL ServerSQL Server specificando limiti relativi all'utilizzo delle risorse da parte delle richieste in entrata.Resource Governor enables you to manage SQL ServerSQL Server workloads and resources by specifying limits on resource consumption by incoming requests. Nel contesto di Resource Governor il carico di lavoro è un set di richieste o query con dimensioni simili che può o deve essere considerato come singola entità.In the Resource Governor context, workload is a set of similarly sized queries or requests that can, and should be, treated as a single entity. Sebbene non si tratti di un requisito obbligatorio, utilizzando in modo uniforme le risorse di un carico di lavoro è possibile sfruttare al massimo i vantaggi offerti da Resource Governor.This is not a requirement, but the more uniform the resource usage pattern of a workload is, the more benefit you are likely to derive from Resource Governor. I limiti delle risorse possono essere riconfigurati in tempo reale con un minimo impatto sui carichi di lavoro in esecuzione.Resource limits can be reconfigured in real time with minimal impact on workloads that are executing.

In un ambiente con più carichi di lavoro distinti nello stesso server Resource Governor consente di differenziare tali carichi di lavoro e allocare le risorse condivise in modo appropriato, in base ai limiti specificati.In an environment where multiple distinct workloads are present on the same server, Resource Governor enables you to differentiate these workloads and allocate shared resources as they are requested, based on the limits that you specify. Tali risorse sono rappresentate da CPU, I/O fisico e memoria.These resources are CPU, physical IO, and memory.

Resource Governor consente di:By using Resource Governor, you can:

  • Fornire multi-tenancy e isolamento delle risorse in singole istanze di SQL Server che servono più carichi di lavoro client.Provide multitenancy and resource isolation on single instances of SQL Server that serve multiple client workloads. In pratica, è possibile dividere le risorse disponibili su un server tra i carichi di lavoro e ridurre al minimo i problemi che possono verificarsi quando i carichi di lavoro si contendono le risorse.That is, you can divide the available resources on a server among the workloads and minimize the problems that can occur when workloads compete for resources.

  • Fornire prestazioni prevedibili e supportare SLA per tenant di carichi di lavoro in un ambiente con più carichi di lavoro e più utenti.Provide predictable performance and support SLAs for workload tenants in a multi-workload and multi-user environment.

  • Isolare e limitare le query con eccessivo tempo di esecuzione o limitare le risorse di I/O per le operazioni come DBCC CHECKDB che possono saturare il sottosistema di I/O e influire negativamente sugli altri carichi di lavoro.Isolate and limit runaway queries or throttle IO resources for operations such as DBCC CHECKDB that can saturate the IO subsystem and negatively impact other workloads.

  • Aggiungere un rilevamento delle risorse con granularità fine per i chargeback dell'utilizzo delle risorse e fornire una fatturazione prevedibile ai clienti che utilizzano le risorse del server.Add fine-grained resource tracking for resource usage chargebacks and provide predictable billing to the consumers of the server resources.

Vincoli di Resource GovernorResource Governor Constraints

In questa versione di Resource Governor sono previsti i seguenti vincoli:This release of Resource Governor has the following constraints:

  • La gestione delle risorse è limitata a Motore di database di SQL ServerSQL Server Database Engine.Resource management is limited to the Motore di database di SQL ServerSQL Server Database Engine. Non è possibile utilizzare Resource Governor per Analysis ServicesAnalysis Services, Integration ServicesIntegration Servicese Reporting ServicesReporting Services.Resource Governor can not be used for Analysis ServicesAnalysis Services, Integration ServicesIntegration Services, and Reporting ServicesReporting Services.

  • Non è disponibile il monitoraggio o la gestione del carico di lavoro tra istanze di SQL Server.There is no workload monitoring or workload management between SQL Server instances.

  • Resource Governor è in grado di gestire i carichi di lavoro OLTP. Questi tipi di query, in genere con una durata molto breve, non restano tuttavia mai abbastanza a lungo nella CPU da richiedere l'applicazione dei controlli di larghezza di banda.Resource Governor can manage OLTP workloads but these types of queries, which are typically very short in duration, are not always on the CPU long enough to apply bandwidth controls. Ciò può comportare un'asimmetria nelle statistiche restituite per la percentuale di utilizzo della CPU.This may skew in the statistics returned for CPU usage %.

  • La capacità di governare l'I/O fisico è relativa solo alle operazioni degli utenti e non alle attività di sistema.The ability to govern physical IO only applies to user operations and not system tasks. Tra le attività di sistema sono incluse le operazioni di scrittura nel log delle transazioni e le operazioni di I/O del Lazywriter.System tasks include write operations to the transaction log and Lazy Writer IO operations. La funzionalità Resource Governor si applica soprattutto alle operazioni di lettura dell'utente perché la maggior parte delle operazioni di scrittura viene eseguita in genere dalle attività di sistema.The Resource Govenor applies primarily to user read operations because most write operations are typically performed by system tasks.

  • Non è possibile impostare delle soglie di I/O sul pool di risorse interne.You cannot set IO thresholds on the internal resource pool.

Concetti relativi alle risorseResource Concepts

I tre concetti seguenti sono essenziali per la comprensione e l'utilizzo di Resource Governor:The following three concepts are fundamental to understanding and using Resource Governor:

  • Pool di risorse.Resource pools. Un pool di risorse rappresenta le risorse fisiche del server.A resource pool, represents the physical resources of the server. Il pool può essere paragonato a un'istanza virtuale di SQL ServerSQL Server in un'istanza di SQL ServerSQL Server .You can think of a pool as a virtual SQL ServerSQL Server instance inside of a SQL ServerSQL Server instance. Due pool di risorse (interno e predefinito) vengono creati con l'installazione di SQL ServerSQL Server .Two resource pools (internal and default) are created when SQL ServerSQL Server is installed. Resource Governor supporta anche i pool di risorse definiti dall'utente.Resource Governor also supports user-defined resource pools. Per altre informazioni, vedere Pool di risorse di Resource Governor.For more information, see Resource Governor Resource Pool.

  • Gruppi del carico di lavoro.Workload groups. Un gruppo di carico di lavoro viene utilizzato come contenitore per richieste di sessione che presentano criteri di classificazione simili.A workload group serves as a container for session requests that have similar classification criteria. Un carico di lavoro consente il monitoraggio complessivo delle sessioni e di definire i criteri per le sessioni.A workload allows for aggregate monitoring of the sessions, and defines policies for the sessions. Ciascun gruppo di carico di lavoro si trova in un pool di risorse.Each workload group is in a resource pool. Vengono creati due gruppi di carico di lavoro (interno e predefinito) e ne viene eseguito il mapping ai relativi pool di risorse durante l'installazione di SQL ServerSQL Server .Two workload groups (internal and default) are created and mapped to their corresponding resource pools when SQL ServerSQL Server is installed. Resource Governor supporta anche i gruppi del carico di lavoro definiti dall'utente.Resource Governor also supports user-defined workload groups. Per altre informazioni, vedere Gruppo di carico di lavoro di Resource Governor.For more information see, Resource Governor Workload Group.

  • Classificazione.Classification. Il processo di classificazione consente di assegnare sessioni in ingresso a un gruppo di carico di lavoro in base alle caratteristiche della sessione.The Classification process assigns incoming sessions to a workload group based on the characteristics of the session. È possibile personalizzare la logica di classificazione scrivendo una funzione definita dall'utente, chiamata funzione di classificazione.You can tailor the classification logic by writing a user-defined function, called a classifier function. Resource Governor supporta anche una funzione di classificazione definita dall'utente per l'implementazione delle regole di classificazione.Resource Governor also supports a classifier user-defined function for implementing classification rules. Per altre informazioni, vedere Funzione di classificazione di Resource Governor.For more information, see Resource Governor Classifier Function.

Nota

Resource Governor non impone controlli su una connessione amministrativa dedicata (DAC, Dedicated Administrator Connection).Resource Governor does not impose any controls on a dedicated administrator connection (DAC). Non è necessario classificare le query DAC in esecuzione nel gruppo del carico di lavoro interno e nel pool di risorse.There is no need to classify DAC queries, which run in the internal workload group and resource pool.

Nel contesto di Resource Governor è possibile considerare i concetti precedenti come componenti.In the context of Resource Governor, you can treat the preceding concepts as components. Nella seguente illustrazione vengono mostrati questi componenti e le relazioni tra di essi nell'ambiente del motore di database.The following illustration shows these components and their relationship with each other as they exist in the database engine environment. Da una prospettiva di elaborazione, il flusso semplificato è il seguente:From a processing perspective, the simplified flow is as follows:

  • È presente una connessione in ingresso per una sessione (sessione 1 di n).There is an incoming connection for a session (Session 1 of n).

  • La sessione è classificata (classificazione).The session is classified (Classification).

  • Il carico di lavoro della sessione viene indirizzato a un gruppo del carico di lavoro, ad esempio, il gruppo 4.The session workload is routed to a workload group, for example, Group 4.

  • Il gruppo del carico di lavoro utilizza il pool di risorse al quale è associato, ad esempio il pool 2.The workload group uses the resource pool it is associated with, for example, Pool 2.

  • Il pool di risorse fornisce e consente di limitare le risorse richieste dall'applicazione, ad esempio, l'applicazione 3.The resource pool provides and limits the resources required by the application, for example, Application 3.

    Componenti funzionali di Resource GovernorResource Governor Functional Components

Attività di Resource GovernorResource Governor Tasks

Descrizione dell'attivitàTask Description ArgomentoTopic
Viene descritto come abilitare Resource Governor.Describes how to enable Resource Governor. Abilitare Resource GovernorEnable Resource Governor
Viene descritto come disabilitare Resource Governor.Describes how to disable Resource Governor. Disabilitare Resource GovernorDisable Resource Governor
Viene descritto come creare, modificare ed eliminare un pool di risorse.Describes how to create, alter, and drop a resource pool. Pool di risorse di Resource GovernorResource Governor Resource Pool
Viene descritto come creare, modificare, spostare ed eliminare un gruppo di carico di lavoro.Describes how to create, alter, move, and drop a workload group. Gruppo di carico di lavoro di Resource GovernorResource Governor Workload Group
Viene descritto come creare e verificare una funzione di classificazione definita dall'utente.Describes how to create and test a classifier user-defined function. Funzione di classificazione di Resource GovernorResource Governor Classifier Function
Viene descritto come configurare Resource Governor utilizzando un modello.Describes how to configure Resource Governor using a template. Configurare Resource Governor utilizzando un modelloConfigure Resource Governor Using a Template
Viene illustrata la procedura per visualizzare le proprietà di Resource Governor.Describes how to view Resource Governor properties. Visualizzare proprietà di Resource GovernorView Resource Governor Properties

Vedere ancheSee Also

Istanze del motore di database (SQL Server)Database Engine Instances (SQL Server)