Dela via


SKAPA ARBETSBELASTNINGSGRUPP (Transact-SQL)

Välj en produkt

På följande rad väljer du det produktnamn som du är intresserad av och endast den produktinformationen visas.

* SQL Server *  

 

SQL Server och SQL Managed Instance

Skapar en resursguvernörsarbetsbelastningsgrupp och associerar arbetsbelastningsgruppen med en resurspool för resursguvernören.

Resursguvernören är inte tillgänglig i varje utgåva av SQL Server. En lista över funktioner som stöds av versionerna av SQL Server finns i Utgåvor och funktioner som stöds i SQL Server 2022.

Not

För Azure SQL Managed Instance måste du vara i kontexten för den master databasen för att ändra konfigurationen av resursguvernören.

Transact-SQL syntaxkonventioner.

Syntax

CREATE WORKLOAD GROUP group_name
[ WITH
    ( [ IMPORTANCE = { LOW | MEDIUM | HIGH } ]
      [ [ , ] REQUEST_MAX_MEMORY_GRANT_PERCENT = value ]
      [ [ , ] REQUEST_MAX_CPU_TIME_SEC = value ]
      [ [ , ] REQUEST_MEMORY_GRANT_TIMEOUT_SEC = value ]
      [ [ , ] MAX_DOP = value ]
      [ [ , ] GROUP_MAX_REQUESTS = value ] )
]
[ USING {
    [ pool_name | [default] ]
    [ [ , ] EXTERNAL external_pool_name | [default] ]
    } ]
[ ; ]

Argument

group_name

Det användardefinierade namnet på arbetsbelastningsgruppen. group_name är alfanumeriskt, kan vara upp till 128 tecken, måste vara unikt i en instans av databasmotorn och måste följa reglerna för Database-identifierare.

IMPORTANCE = { LOW | MEDIUM | HÖG }

Anger den relativa betydelsen av en begäran i arbetsbelastningsgruppen. Standardvärdet är MEDIUM.

IMPORTANCE är lokal för resurspoolen som innehåller arbetsbelastningsgruppen. Arbetsbelastningsgrupper av olika betydelse i samma resurspool påverkar varandra, men påverkar inte arbetsbelastningsgrupper i andra resurspooler.

REQUEST_MAX_MEMORY_GRANT_PERCENT = värde

Anger den maximala mängden minne för frågearbetsytan som en enskild begäran kan ta från poolen. värdet är en procentandel av resurspoolens storlek som definieras av MAX_MEMORY_PERCENT. Standardvärdet är 25.

I SQL Server 2017 (14.x) och äldre är värde ett heltal och det tillåtna intervallet är mellan 1 och 100.

Från och med SQL Server 2019 (15.x) kan värdet vara bråktal med hjälp av float datatyp. Det tillåtna intervallet är mellan 0 och 100.

Viktig

Det angivna beloppet avser endast frågearbetsytans minne som hämtas via frågeminnesbidrag.

Vi rekommenderar inte att du anger värde för stort (t.ex. större än 70) eftersom servern kanske inte kan avsätta tillräckligt med ledigt minne för andra samtidiga frågor. Detta kan leda till en timeout för minnesutfärdning fel 8645.

Om du anger värdet till 0 eller ett litet värde kan det förhindra att frågor med operatorer som kräver arbetsyteminne, till exempel sort och hash, körs i användardefinierade arbetsbelastningsgrupper. Om frågeminneskraven överskrider den gräns som definieras av den här parametern inträffar följande beteende:

  • För användardefinierade arbetsbelastningsgrupper försöker servern minska graden av parallellitet (DOP) för begäran (frågan) tills minneskravet ligger under gränsen eller tills DOP är lika med 1. Om frågeminneskravet fortfarande är större än gränsen uppstår fel 8657 och frågan misslyckas.
  • För arbetsbelastningsgrupperna internal och default tillåter servern att frågan hämtar det minne som krävs.

I båda fallen kan fel 8645 inträffa om servern inte har tillräckligt med fysiskt minne.

REQUEST_MAX_CPU_TIME_SEC = värde

Anger den maximala cpu-tid i sekunder som en begäran kan använda. värdet måste vara 0 eller ett positivt heltal. Standardinställningen för värde är 0, vilket innebär obegränsad.

Som standard hindrar inte resursguvernören en begäran från att fortsätta om den maximala tiden överskrids. En händelse genereras dock. Mer information finns i cpu-tröskelvärdet överskred händelseklassen.

Från och med SQL Server 2016 (13.x) SP2 och SQL Server 2017 (14.x) CU3 och med hjälp av spårningsflagga 2422avbryter resursguvernören en begäran när den maximala CPU-tiden överskrids.

REQUEST_MEMORY_GRANT_TIMEOUT_SEC = värde

Anger den maximala tid i sekunder som en fråga kan vänta på att ett minnesbidrag från frågearbetsytans minne ska bli tillgängligt. värdet måste vara 0 eller ett positivt heltal. Standardinställningen för -värdet, 0, använder en intern beräkning baserat på frågekostnaden för att fastställa den maximala tiden.

En fråga misslyckas inte alltid när tidsgränsen för minnesstipendium nås. En fråga misslyckas bara om det finns för många samtidiga frågor som körs. Annars kanske frågan bara får minsta möjliga minnesbidrag, vilket resulterar i lägre frågeprestanda.

MAX_DOP = värde

Anger den maximala graden av parallellitet (MAXDOP) för parallell frågekörning. Det tillåtna intervallet för värde är mellan 0 och 64. Standardinställningen för -värdet, 0, använder den globala inställningen.

Mer information finns i MAXDOP-.

GROUP_MAX_REQUESTS = värde

Anger det maximala antalet samtidiga begäranden som tillåts köras i arbetsbelastningsgruppen. värdet måste vara 0 eller ett positivt heltal. Standardinställningen för värde är 0 och tillåter obegränsade begäranden. När maximalt antal samtidiga begäranden nås kan en session i gruppen skapas, men placeras i vänteläge tills antalet samtidiga begäranden sjunker under det angivna värdet.

USING { pool_name | [standard] }

Associerar arbetsbelastningsgruppen med den användardefinierade resurspoolen som identifieras av pool_nameeller med default resurspoolen. Om pool_name inte anges, eller om argumentet USING inte har angetts, associeras arbetsbelastningsgruppen med den inbyggda default poolen.

default är ett reserverat ord och när det anges i USING, måste omges av hakparenteser ([]) eller citattecken ("").

Inbyggda resurspooler och arbetsbelastningsgrupper använder alla gemener, till exempel default. Använd gemener default på servrar som använder en skiftlägeskänslig sortering. Servrar med skiftlägesokänslig sortering behandlar default, Defaultoch DEFAULT som samma värde.

EXTERN external_pool_name | [standard]

gäller för: SQL Server 2016 (13.x) och senare.

Arbetsbelastningsgrupp kan ange en extern resurspool. Du kan definiera en arbetsbelastningsgrupp och associera den med två pooler:

  • En resurspool för databasmotorns arbetsbelastningar.
  • En extern resurspool för externa processer. Mer information finns i sp_execute_external_script.

Anmärkningar

Mer information finns i resource governor and Resource governor workload group.

MAXDOP

För en viss fråga bestäms effektiva MAXDOP på följande sätt:

  • MAXDOP som ett frågetips respekteras så länge det inte överskrider arbetsbelastningsgruppens MAX_DOP inställning.
  • MAXDOP som ett frågetips åsidosätter alltid max degree of parallelism serverkonfiguration. Mer information finns i Server-konfiguration: maximal grad av parallellitet.
  • Arbetsbelastningsgruppen MAX_DOP åsidosätter max degree of parallelism serverkonfiguration och MAXDOPdatabasomfattande konfiguration.

Gränsen för MAXDOP anges per aktivitet. Det är inte en per begäran eller per frågegräns. Under en körning av en parallell fråga kan en enskild begäran skapa flera uppgifter som har tilldelats till en schemaläggaren. Mer information finns i tråd- och aktivitetsarkitekturguiden.

När en fråga markeras som seriell vid kompileringstid (MAXDOP = 1) kan den inte köras med parallellitet vid körning oavsett arbetsbelastningsgrupp eller serverkonfigurationsinställning. När MAXDOP har bestämts för en fråga kan den bara sänkas på grund av minnesbelastning. Omkonfiguration av arbetsbelastningsgrupp påverkar inte frågor som väntar i kön för minnesbeviljande.

Skapa index

Av prestandaskäl kan indexskapande använda mer minnesarbetsyta än vad som ursprungligen beviljades. Resursguvernören stöder den här särskilda hanteringen. Det första beviljandet och eventuella ytterligare minnesbidrag begränsas dock av arbetsbelastningsgruppen och inställningarna för resurspoolen.

Det minne som förbrukas för att skapa ett icke-berättigat index i en partitionerad tabell är proportionellt mot antalet berörda partitioner. Om det totala antalet minne som krävs överskrider gränsen per fråga som tillämpas av inställningen för REQUEST_MAX_MEMORY_GRANT_PERCENT arbetsbelastningsgrupp kan indexskapandet misslyckas. Eftersom den default arbetsbelastningsgruppen tillåter att en fråga överskrider gränsen per fråga med det minsta minne som krävs för att starta för bakåtkompatibilitet, kanske du kan skapa samma index med arbetsbelastningsgruppen default om default resurspoolen har tillräckligt med totalt minne.

Behörigheter

Kräver behörigheten CONTROL SERVER.

Exempel

Skapar en arbetsbelastningsgrupp med namnet newReports i resurspoolen default och begränsar det maximala minnesbidraget, den maximala CPU-tiden för en begäran och MAXDOP.

CREATE WORKLOAD GROUP newReports
WITH (
     REQUEST_MAX_MEMORY_GRANT_PERCENT = 2.5,
     REQUEST_MAX_CPU_TIME_SEC = 100,
     MAX_DOP = 4
     )
USING [default];

* SQL Managed Instance *  

 

SQL Server och SQL Managed Instance

Skapar en resursguvernörsarbetsbelastningsgrupp och associerar arbetsbelastningsgruppen med en resurspool för resursguvernören.

Resursguvernören är inte tillgänglig i varje utgåva av SQL Server. En lista över funktioner som stöds av versionerna av SQL Server finns i Utgåvor och funktioner som stöds i SQL Server 2022.

Not

För Azure SQL Managed Instance måste du vara i kontexten för den master databasen för att ändra konfigurationen av resursguvernören.

Transact-SQL syntaxkonventioner.

Syntax

CREATE WORKLOAD GROUP group_name
[ WITH
    ( [ IMPORTANCE = { LOW | MEDIUM | HIGH } ]
      [ [ , ] REQUEST_MAX_MEMORY_GRANT_PERCENT = value ]
      [ [ , ] REQUEST_MAX_CPU_TIME_SEC = value ]
      [ [ , ] REQUEST_MEMORY_GRANT_TIMEOUT_SEC = value ]
      [ [ , ] MAX_DOP = value ]
      [ [ , ] GROUP_MAX_REQUESTS = value ] )
]
[ USING {
    [ pool_name | [default] ]
    [ [ , ] EXTERNAL external_pool_name | [default] ]
    } ]
[ ; ]

Argument

group_name

Det användardefinierade namnet på arbetsbelastningsgruppen. group_name är alfanumeriskt, kan vara upp till 128 tecken, måste vara unikt i en instans av databasmotorn och måste följa reglerna för Database-identifierare.

IMPORTANCE = { LOW | MEDIUM | HÖG }

Anger den relativa betydelsen av en begäran i arbetsbelastningsgruppen. Standardvärdet är MEDIUM.

IMPORTANCE är lokal för resurspoolen som innehåller arbetsbelastningsgruppen. Arbetsbelastningsgrupper av olika betydelse i samma resurspool påverkar varandra, men påverkar inte arbetsbelastningsgrupper i andra resurspooler.

REQUEST_MAX_MEMORY_GRANT_PERCENT = värde

Anger den maximala mängden minne för frågearbetsytan som en enskild begäran kan ta från poolen. värdet är en procentandel av resurspoolens storlek som definieras av MAX_MEMORY_PERCENT. Standardvärdet är 25.

I SQL Server 2017 (14.x) och äldre är värde ett heltal och det tillåtna intervallet är mellan 1 och 100.

Från och med SQL Server 2019 (15.x) kan värdet vara bråktal med hjälp av float datatyp. Det tillåtna intervallet är mellan 0 och 100.

Viktig

Det angivna beloppet avser endast frågearbetsytans minne som hämtas via frågeminnesbidrag.

Vi rekommenderar inte att du anger värde för stort (t.ex. större än 70) eftersom servern kanske inte kan avsätta tillräckligt med ledigt minne för andra samtidiga frågor. Detta kan leda till en timeout för minnesutfärdning fel 8645.

Om du anger värdet till 0 eller ett litet värde kan det förhindra att frågor med operatorer som kräver arbetsyteminne, till exempel sort och hash, körs i användardefinierade arbetsbelastningsgrupper. Om frågeminneskraven överskrider den gräns som definieras av den här parametern inträffar följande beteende:

  • För användardefinierade arbetsbelastningsgrupper försöker servern minska graden av parallellitet (DOP) för begäran (frågan) tills minneskravet ligger under gränsen eller tills DOP är lika med 1. Om frågeminneskravet fortfarande är större än gränsen uppstår fel 8657 och frågan misslyckas.
  • För arbetsbelastningsgrupperna internal och default tillåter servern att frågan hämtar det minne som krävs.

I båda fallen kan fel 8645 inträffa om servern inte har tillräckligt med fysiskt minne.

REQUEST_MAX_CPU_TIME_SEC = värde

Anger den maximala cpu-tid i sekunder som en begäran kan använda. värdet måste vara 0 eller ett positivt heltal. Standardinställningen för värde är 0, vilket innebär obegränsad.

Som standard hindrar inte resursguvernören en begäran från att fortsätta om den maximala tiden överskrids. En händelse genereras dock. Mer information finns i cpu-tröskelvärdet överskred händelseklassen.

Från och med SQL Server 2016 (13.x) SP2 och SQL Server 2017 (14.x) CU3 och med hjälp av spårningsflagga 2422avbryter resursguvernören en begäran när den maximala CPU-tiden överskrids.

REQUEST_MEMORY_GRANT_TIMEOUT_SEC = värde

Anger den maximala tid i sekunder som en fråga kan vänta på att ett minnesbidrag från frågearbetsytans minne ska bli tillgängligt. värdet måste vara 0 eller ett positivt heltal. Standardinställningen för -värdet, 0, använder en intern beräkning baserat på frågekostnaden för att fastställa den maximala tiden.

En fråga misslyckas inte alltid när tidsgränsen för minnesstipendium nås. En fråga misslyckas bara om det finns för många samtidiga frågor som körs. Annars kanske frågan bara får minsta möjliga minnesbidrag, vilket resulterar i lägre frågeprestanda.

MAX_DOP = värde

Anger den maximala graden av parallellitet (MAXDOP) för parallell frågekörning. Det tillåtna intervallet för värde är mellan 0 och 64. Standardinställningen för -värdet, 0, använder den globala inställningen.

Mer information finns i MAXDOP-.

GROUP_MAX_REQUESTS = värde

Anger det maximala antalet samtidiga begäranden som tillåts köras i arbetsbelastningsgruppen. värdet måste vara 0 eller ett positivt heltal. Standardinställningen för värde är 0 och tillåter obegränsade begäranden. När maximalt antal samtidiga begäranden nås kan en session i gruppen skapas, men placeras i vänteläge tills antalet samtidiga begäranden sjunker under det angivna värdet.

USING { pool_name | [standard] }

Associerar arbetsbelastningsgruppen med den användardefinierade resurspoolen som identifieras av pool_nameeller med default resurspoolen. Om pool_name inte anges, eller om argumentet USING inte har angetts, associeras arbetsbelastningsgruppen med den inbyggda default poolen.

default är ett reserverat ord och när det anges i USING, måste omges av hakparenteser ([]) eller citattecken ("").

Inbyggda resurspooler och arbetsbelastningsgrupper använder alla gemener, till exempel default. Använd gemener default på servrar som använder en skiftlägeskänslig sortering. Servrar med skiftlägesokänslig sortering behandlar default, Defaultoch DEFAULT som samma värde.

EXTERN external_pool_name | [standard]

gäller för: SQL Server 2016 (13.x) och senare.

Arbetsbelastningsgrupp kan ange en extern resurspool. Du kan definiera en arbetsbelastningsgrupp och associera den med två pooler:

  • En resurspool för databasmotorns arbetsbelastningar.
  • En extern resurspool för externa processer. Mer information finns i sp_execute_external_script.

Anmärkningar

Mer information finns i resource governor and Resource governor workload group.

MAXDOP

För en viss fråga bestäms effektiva MAXDOP på följande sätt:

  • MAXDOP som ett frågetips respekteras så länge det inte överskrider arbetsbelastningsgruppens MAX_DOP inställning.
  • MAXDOP som ett frågetips åsidosätter alltid max degree of parallelism serverkonfiguration. Mer information finns i Server-konfiguration: maximal grad av parallellitet.
  • Arbetsbelastningsgruppen MAX_DOP åsidosätter max degree of parallelism serverkonfiguration och MAXDOPdatabasomfattande konfiguration.

Gränsen för MAXDOP anges per aktivitet. Det är inte en per begäran eller per frågegräns. Under en körning av en parallell fråga kan en enskild begäran skapa flera uppgifter som har tilldelats till en schemaläggaren. Mer information finns i tråd- och aktivitetsarkitekturguiden.

När en fråga markeras som seriell vid kompileringstid (MAXDOP = 1) kan den inte köras med parallellitet vid körning oavsett arbetsbelastningsgrupp eller serverkonfigurationsinställning. När MAXDOP har bestämts för en fråga kan den bara sänkas på grund av minnesbelastning. Omkonfiguration av arbetsbelastningsgrupp påverkar inte frågor som väntar i kön för minnesbeviljande.

Skapa index

Av prestandaskäl kan indexskapande använda mer minnesarbetsyta än vad som ursprungligen beviljades. Resursguvernören stöder den här särskilda hanteringen. Det första beviljandet och eventuella ytterligare minnesbidrag begränsas dock av arbetsbelastningsgruppen och inställningarna för resurspoolen.

Det minne som förbrukas för att skapa ett icke-berättigat index i en partitionerad tabell är proportionellt mot antalet berörda partitioner. Om det totala antalet minne som krävs överskrider gränsen per fråga som tillämpas av inställningen för REQUEST_MAX_MEMORY_GRANT_PERCENT arbetsbelastningsgrupp kan indexskapandet misslyckas. Eftersom den default arbetsbelastningsgruppen tillåter att en fråga överskrider gränsen per fråga med det minsta minne som krävs för att starta för bakåtkompatibilitet, kanske du kan skapa samma index med arbetsbelastningsgruppen default om default resurspoolen har tillräckligt med totalt minne.

Behörigheter

Kräver behörigheten CONTROL SERVER.

Exempel

Skapar en arbetsbelastningsgrupp med namnet newReports i resurspoolen default och begränsar det maximala minnesbidraget, den maximala CPU-tiden för en begäran och MAXDOP.

CREATE WORKLOAD GROUP newReports
WITH (
     REQUEST_MAX_MEMORY_GRANT_PERCENT = 2.5,
     REQUEST_MAX_CPU_TIME_SEC = 100,
     MAX_DOP = 4
     )
USING [default];

* Azure Synapse
Analys *
 

 

Azure Synapse Analytics

Skapar en arbetsbelastningsgrupp. Arbetsbelastningsgrupper är containrar för en uppsättning begäranden och utgör grunden för hur arbetsbelastningshantering konfigureras i ett system. Arbetsbelastningsgrupper ger möjlighet att reservera resurser för arbetsbelastningsisolering, innehålla resurser, definiera resurser per begäran och följa körningsregler. När instruktionen har slutförts gäller inställningarna.

Transact-SQL syntaxkonventioner

CREATE WORKLOAD GROUP group_name
 WITH
 (   MIN_PERCENTAGE_RESOURCE = value 
   , CAP_PERCENTAGE_RESOURCE = value 
   , REQUEST_MIN_RESOURCE_GRANT_PERCENT = value
  [ [ , ] REQUEST_MAX_RESOURCE_GRANT_PERCENT = value ]
  [ [ , ] IMPORTANCE = { LOW | BELOW_NORMAL | NORMAL | ABOVE_NORMAL | HIGH } ]
  [ [ , ] QUERY_EXECUTION_TIMEOUT_SEC = value ] )
  [ ; ]

group_name
Anger namnet som arbetsbelastningsgruppen identifieras med. group_name är ett sysname. Den kan vara upp till 128 tecken lång och måste vara unik i instansen.

MIN_PERCENTAGE_RESOURCE = värde
Anger en garanterad minsta resursallokering för den här arbetsbelastningsgruppen som inte delas med andra arbetsbelastningsgrupper. Minne är den enda resurs som styrs av den här parametern. värde är ett heltalsintervall från 0 till 100. Summan av min_percentage_resource för alla arbetsbelastningsgrupper får inte överstiga 100. Värdet för min_percentage_resource får inte vara större än cap_percentage_resource. Det finns lägsta tillåtna effektiva värden per tjänstnivå. Mer information finns i effektiva värden.

CAP_PERCENTAGE_RESOURCE = värde
Anger den maximala resursanvändningen för alla begäranden i en arbetsbelastningsgrupp. Både CPU- och minnesresurser begränsas av den här parametern. Det tillåtna heltalsintervallet för värdet är 1 till 100. Värdet för cap_percentage_resource måste vara större än min_percentage_resource. Det effektiva värdet för cap_percentage_resource kan minskas om min_percentage_resource har konfigurerats större än noll i andra arbetsbelastningsgrupper.

REQUEST_MIN_RESOURCE_GRANT_PERCENT = värde
Anger den minsta mängd resurser som allokeras per begäran. Minne är den enda resurs som styrs av den här parametern. värde är en obligatorisk parameter med ett decimalintervall mellan 0,75 och 100,00. Värdet för request_min_resource_grant_percent måste vara en multipel av 0,25, måste vara en faktor för min_percentage_resource och vara mindre än cap_percentage_resource. Det finns lägsta tillåtna effektiva värden per tjänstnivå. Mer information finns i effektiva värden.

Till exempel:

CREATE WORKLOAD GROUP wgSample 
WITH
  ( MIN_PERCENTAGE_RESOURCE = 26                -- integer value
    , REQUEST_MIN_RESOURCE_GRANT_PERCENT = 3.25 -- factor of 26 (guaranteed a minimum of 8 concurrency)
    , CAP_PERCENTAGE_RESOURCE = 100 )

Överväg de värden som används för resursklasser som en riktlinje för request_min_resource_grant_percent. Tabellen nedan innehåller resursallokeringar för Gen2.

Resursklass Procent av resurser
Smallrc 3%
Mediumrc 10%
Större 22%
Xlargerc 70%

REQUEST_MAX_RESOURCE_GRANT_PERCENT = värde

Anger den maximala mängden resurser som allokeras per begäran. Minne är den enda resurs som styrs av den här parametern. värde är en valfri decimalparameter med ett standardvärde som är lika med request_min_resource_grant_percent. värdet måste vara större än eller lika med request_min_resource_grant_percent. När värdet för request_max_resource_grant_percent är större än request_min_resource_grant_percent och systemresurser är tillgängliga allokeras ytterligare resurser till en begäran.

IMPORTANCE = { LOW | BELOW_NORMAL | NORMAL | ABOVE_NORMAL | HIGH }

Anger standardvikten för en begäran för arbetsbelastningsgruppen. Prioritet är något av följande, där NORMAL är standard:

  • LÅG
  • BELOW_NORMAL
  • NORMAL (standard)
  • ABOVE_NORMAL
  • HÖG

Prioritet som anges i arbetsbelastningsgruppen är en standardvikt för alla begäranden i arbetsbelastningsgruppen. En användare kan också ange prioritet på klassificerarnivå, vilket kan åsidosätta arbetsbelastningsgruppens prioritetsinställning. Detta möjliggör differentiering av prioritet för begäranden i en arbetsbelastningsgrupp för att få åtkomst till icke-reserverade resurser snabbare. När summan av min_percentage_resource mellan arbetsbelastningsgrupper är mindre än 100 finns det icke-reserverade resurser som tilldelas på grundval av betydelse.

QUERY_EXECUTION_TIMEOUT_SEC = värde

Anger den maximala tid i sekunder som en fråga kan köras innan den avbryts. värdet måste vara 0 eller ett positivt heltal. Standardinställningen för värdet är 0, vilket frågan aldrig överskrider. QUERY_EXECUTION_TIMEOUT_SEC räknas när frågan är i körningstillstånd, inte när frågan är i kö.

Anmärkningar

Arbetsbelastningsgrupper som motsvarar resursklasser skapas automatiskt för bakåtkompatibilitet. Dessa systemdefinierade arbetsbelastningsgrupper kan inte tas bort. Ytterligare 8 användardefinierade arbetsbelastningsgrupper kan skapas.

Om en arbetsbelastningsgrupp skapas med min_percentage_resource större än noll köar CREATE WORKLOAD GROUP-instruktionen tills det finns tillräckligt med resurser för att skapa arbetsbelastningsgruppen.

Effektiva värden

Parametrarna min_percentage_resource, cap_percentage_resource, request_min_resource_grant_percent och request_max_resource_grant_percent har effektiva värden som justeras i kontexten för den aktuella tjänstnivån och konfigurationen av andra arbetsbelastningsgrupper.

Parametern request_min_resource_grant_percent har ett effektivt värde eftersom det finns minsta resurser som behövs per fråga beroende på tjänstnivå. På den lägsta tjänstnivån DW100c krävs till exempel minst 25% resurser per begäran. Om arbetsbelastningsgruppen har konfigurerats med 3% request_min_resource_grant_percent och request_max_resource_grant_percentjusteras de effektiva värdena för båda parametrarna till 25% när instansen startas. Om instansen skalas upp till DW1000c är de konfigurerade och effektiva värdena för båda parametrarna 3% eftersom 3% är det minsta värde som stöds på den tjänstnivån. Om instansen skalas högre än DW1000c ligger de konfigurerade och effektiva värdena för båda parametrarna kvar på 3%. Mer information om effektiva värden på olika tjänstnivåer finns i tabellen nedan.

Tjänstnivå Lägsta effektiva värde för REQUEST_MIN_RESOURCE_GRANT_PERCENT Maximalt antal samtidiga frågor
DW100c 25% 4
DW200c 12.5% 8
DW300c 8% 12
DW400c 6.25% 16
DW500c 5% 20
DW1000c 3% 32
DW1500c 3% 32
DW2000c 2% 48
DW2500c 2% 48
DW3000c 1,5% 64
DW5000c 1,5% 64
DW6000c 0,75% 128
DW7500c 0,75% 128
DW10000c 0,75% 128
DW15000c 0,75% 128
DW30000c 0,75% 128

Parametern min_percentage_resource måste vara större än eller lika med den effektiva request_min_resource_grant_percent. En arbetsbelastningsgrupp med min_percentage_resource mindre konfigurerad än effektiv min_percentage_resource har värdet justerat till noll vid körning. När detta händer kan de resurser som konfigurerats för min_percentage_resource delas upp i alla arbetsbelastningsgrupper. Till exempel skulle arbetsbelastningsgruppen wgAdHoc med en min_percentage_resource på 10% som körs på DW1000c ha en effektiv min_percentage_resource på 10% (3% är det minsta värde som stöds på DW1000c). wgAdhoc på DW100c skulle ha en effektiv min_percentage_resource på 0%. De 10% som konfigurerats för wgAdhoc delas mellan alla arbetsbelastningsgrupper.

Parametern cap_percentage_resource har också ett effektivt värde. Om en arbetsbelastningsgrupp wgAdhoc har konfigurerats med en cap_percentage_resource på 100% och en annan arbetsbelastningsgrupp wgDashboards skapas med 25% min_percentage_resourceblir den effektiva cap_percentage_resource för wgAdhoc 75%.

Det enklaste sättet att förstå körningsvärdena för dina arbetsbelastningsgrupper är att fråga systemvyn sys.dm_workload_management_workload_groups_stats.

Behörigheter

Kräver CONTROL DATABASE behörighet

Se även