Megosztás a következőn keresztül:


MUNKATERHELÉS CSOPORTJÁNAK MÓDOSÍTÁSA (Transact-SQL)

Termék kiválasztása

A következő sorban válassza ki a kívánt terméknevet, és csak az adott termék adatai jelenjenek meg.

* SQL Server *  

felügyelt SQL-példány

 

SQL Server és felügyelt SQL-példány

Módosít egy meglévő erőforrás-kormányzó számítási feladatcsoport konfigurációját, és opcionálisan hozzárendeli egy másik erőforrás-vezérlő erőforráskészletéhez.

Jegyzet

A felügyelt Azure SQL-példány erőforrás-vezérlő konfigurációjának módosításához az elsődleges replikán lévő adatbázis környezetében master kell lennie.

Transact-SQL szintaxis konvenciói.

Szintaxis

ALTER WORKLOAD GROUP { group_name | [ default ] }
[ 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 ]
      [ [ , ] GROUP_MAX_TEMPDB_DATA_MB = value ]
      [ [ , ] GROUP_MAX_TEMPDB_DATA_PERCENT = value ] )
]
[ USING { pool_name | [default] } ]
[ ; ]

Érvek

group_name | [alapértelmezett]

Egy meglévő felhasználó által definiált számítási feladatcsoport vagy az erőforrás-kormányzó beépített default számítási feladatcsoport neve.

default zárójelben ([]) vagy idézőjelben ("") kell lennie, ha ALTER WORKLOAD GROUP használ, hogy elkerülje a DEFAULTvaló ütközést, amely egy rendszer által fenntartott szó. További információ: Adatbázis-azonosítók.

A beépített erőforráskészletek és számítási feladatok minden kisbetűs nevet használnak, például default. Használja a kisbetűs default a kis- és nagybetűk megkülönböztetésével rendelkező kiszolgálókon. A kis- és nagybetűket nem érzékelyítő rendezéssel rendelkező kiszolgálók default, Defaultés DEFAULT azonos értékként kezelik.

FONTOSSÁG = { LOW | KÖZEPES | MAGAS }

A kérelem relatív fontosságát határozza meg a számítási feladatcsoportban. Az alapértelmezett érték a MEDIUM.

IMPORTANCE a számítási feladatcsoportot tartalmazó erőforráskészlethez tartozik. Az ugyanazon erőforráskészleten belül eltérő fontosságú számítási feladatok csoportjai hatással vannak egymásra, de nem érintik a többi erőforráskészlet számítási feladatainak csoportjait.

REQUEST_MAX_MEMORY_GRANT_PERCENT = érték

Megadja a lekérdezési munkaterület memóriájának maximális mennyiségét, amelyet egyetlen kérés vehet át a készletből. érték a MAX_MEMORY_PERCENTáltal meghatározott erőforráskészlet-méret százalékos aránya. Az alapértelmezett érték 25.

Az SQL Server 2017 -ben (14.x) és régebbi verzióiban érték egész szám, az engedélyezett tartomány pedig 1 és 100 között lehet.

Az SQL Server 2019 -től kezdve (15.x) az érték a float adattípus használatával tört lehet. Az engedélyezett tartomány 0 és 100 között lehet.

Fontos

A megadott mennyiség csak a lekérdezési munkaterület memóriájának lekérdezési memória-vissza nem adása révén kapott memóriára vonatkozik.

Nem ajánlott túl nagy értéket beállítani (például 70-nél nagyobb), mert előfordulhat, hogy a kiszolgáló nem tud elegendő szabad memóriát félretenni más egyidejű lekérdezésekhez. Ez memóriahasználati időtúllépéshez vezethet, 8645-ös- hiba.

Ha értéket 0 értékre vagy egy kis értékre állítja, azzal megakadályozhatja, hogy a munkaterületi memóriát igénylő operátorokkal (például sort és hash) futó lekérdezések a felhasználó által meghatározott számítási feladatok csoportjaiban fussanak. Ha a lekérdezés memóriakövetelményei túllépik a paraméter által meghatározott korlátot, a következő viselkedés következik be:

  • A felhasználó által definiált számítási feladatok csoportjai esetében a kiszolgáló megpróbálja csökkenteni a kérés (lekérdezés) párhuzamossági fokát addig, amíg a memóriaigény nem éri el a korlátot, vagy amíg a DOP értéke nem 1. Ha a lekérdezés memóriakövetelménye továbbra is meghaladja a korlátot, a 8657-ös hiba lép fel, és a lekérdezés meghiúsul.
  • A internal és default számítási feladatcsoportok esetében a kiszolgáló engedélyezi a lekérdezés számára a szükséges memória beszerzését.

Mindkét esetben 8645-ös hiba fordulhat elő, ha a kiszolgáló nem rendelkezik elegendő fizikai memóriával.

REQUEST_MAX_CPU_TIME_SEC = érték

Megadja, hogy a kötegkérelmek maximálisan mennyi processzoridőt használhatnak másodpercben. értéknek 0-nak vagy pozitív egész számnak kell lennie. Az érték alapértelmezett beállítása 0, ami korlátlan értéket jelent.

A maximális cpu-idő túllépésekor a rendszer létrehozza a cpu_threshold_exceeded kiterjesztett eseményt és egy nyomkövetési eseményt. További információ: A cpu küszöbértéke túllépte az eseményosztályt.

A felügyelt Azure SQL-példányban a maximális cpu-idő túllépésekor az erőforrás-vezérlő 10961-os hibával megszakítja a kérést.

Az SQL Serverben az erőforrás-vezérlő alapértelmezés szerint nem szakítja meg a kérést. Az SQL Server 2016 (13.x) SP2 és az SQL Server 2017 (14.x) CU3 verziótól kezdve azonban az erőforrás-vezérlő megszakít egy 10961-s hibát tartalmazó kérést, ha 2422- nyomkövetési jelző engedélyezve van, és túllépi a maximális processzoridőt.

REQUEST_MEMORY_GRANT_TIMEOUT_SEC = érték

Másodpercekben megadott maximális időt adja meg, amíg a lekérdezések a lekérdezés munkaterületének memóriájából memóriakiadást biztosítanak. értéknek 0-nak vagy pozitív egész számnak kell lennie. A érték alapértelmezett beállítása, 0, a lekérdezési költség alapján egy belső számítást használ a maximális idő meghatározásához.

A lekérdezések nem mindig hiúsulnak meg, ha a memóriahasználati időt túllépik. A lekérdezések csak akkor sikertelenek, ha túl sok egyidejű lekérdezés fut. Ellenkező esetben előfordulhat, hogy a lekérdezés csak a minimális memóriakiadást kapja, ami csökkentett lekérdezési teljesítményt eredményez.

MAX_DOP = érték

A párhuzamos lekérdezések végrehajtásának maximális párhuzamossági fokát (MAXDOP) adja meg. A érték megengedett tartománya 0 és 64 között lehet. A érték alapértelmezett beállítása, 0, a globális beállítást használja.

További információ: MAXDOP.

GROUP_MAX_REQUESTS = érték

Megadja az egyidejű kérelmek maximális számát, amelyek a számítási feladatcsoportban végrehajthatók. értéknek 0-nak vagy pozitív egész számnak kell lennie. A érték alapértelmezett beállítása 0, és korlátlan kéréseket tesz lehetővé. A maximális egyidejű kérések elérésekor létrehozhat egy munkamenetet az adott csoportban, de várakozási állapotba kerül, amíg az egyidejű kérések száma a megadott érték alá nem csökken.

GROUP_MAX_TEMPDB_DATA_MB = érték

Megadja, hogy egy számítási feladatcsoport mekkora területet használhat fel az tempdb adatfájlokban megabájtban. az értéknek 0-nak, pozitív számnak vagy NULLNAK kell lennie. A törtértékek megengedettek.

Ha az érték 0, tempdb a tevékenységprofil-csoportban lévő munkamenetek által kiosztott terület nem engedélyezett. Ha egy érték nincs beállítva, az erőforrás-vezérlő nem korlátozza tempdb a számítási feladatcsoport által a területfelhasználást.

A korlát a számítási feladatcsoport összes munkamenete tempdb által felhasznált teljes területre vonatkozik.

Ha egy számítási feladatcsoportban futó kérés megkísérli növelni tempdb az adatterület-használatot a számítási feladatcsoport által GROUP_MAX_TEMPDB_DATA_MBbeállított korlát felett, az erőforrás-kormányzó 1138-ás hibával megszakítja a kérést. További információ: Tempdb space resource governance.

GROUP_MAX_TEMPDB_DATA_PERCENT = érték

Megadja, hogy egy számítási feladatcsoport mekkora területet használhat fel az tempdb adatfájlokban a maximális tempdb méret százalékában. A maximális tempdb méret definícióját a Százalékos korlát konfigurációja című témakörben talál. az értéknek 0 és 100 közötti tartományban kell lennie, vagyis NULL. A törtértékek megengedettek.

Ha az érték 0, tempdb a tevékenységprofil-csoportban lévő munkamenetek által kiosztott terület nem engedélyezett. Ha egy érték nincs beállítva, az erőforrás-vezérlő nem korlátozza tempdb a számítási feladatcsoport által a területfelhasználást. Ha GROUP_MAX_TEMPDB_DATA_MB be van állítva, vagy ha tempdb a maximális méret nincs meghatározva, GROUP_MAX_TEMPDB_DATA_PERCENT nincs hatása.

A korlát a számítási feladatcsoport összes munkamenete tempdb által felhasznált teljes területre vonatkozik.

Ha egy számítási feladatcsoportban futó kérés megkísérli növelni tempdb az adatterület-használatot a számítási feladatcsoport által GROUP_MAX_TEMPDB_DATA_PERCENTbeállított korlát felett, az erőforrás-kormányzó 1138-ás hibával megszakítja a kérést. További információ: Tempdb space resource governance.

USING { pool_name | [ alapértelmezett ] }

A számítási feladatcsoportot a pool_nameáltal azonosított felhasználó által definiált erőforráskészlethez vagy a default erőforráskészlethez társítja. Ha nincs megadva pool_name, vagy ha a USING argumentum nincs megadva, a számítási feladatcsoport a beépített default készlethez van társítva.

default fenntartott szó, és ha az USINGvan megadva, szögletes zárójelek ([]) vagy idézőjelek ("") közé kell tenni.

A beépített erőforráskészletek és számítási feladatok minden kisbetűs nevet használnak, például default. Használja a kisbetűs default a kis- és nagybetűk megkülönböztetésével rendelkező kiszolgálókon. A kis- és nagybetűket nem érzékelyítő rendezéssel rendelkező kiszolgálók default, Defaultés DEFAULT azonos értékként kezelik.

Megjegyzések

ALTER WORKLOAD GROUP a default számítási feladatcsoportban engedélyezett, a internal csoportban azonban nem.

A számítási feladatcsoport konfigurációjának módosításai csak a ALTER RESOURCE GOVERNOR RECONFIGURE végrehajtása után lépnek érvénybe.

További információ: Erőforrás-kormányzó és Erőforrás-kormányzó számítási feladatcsoport.

MAXDOP

Egy adott lekérdezés esetében a tényleges MAXDOP az alábbiak szerint határozzuk meg:

A MAXDOP korlát tevékenységenkéntvan beállítva. Ez nem kérésenként vagy lekérdezési korlátonként. Egy párhuzamos lekérdezés végrehajtása során egyetlen kérés több feladatot is létrehozhat, amelyek egy ütemezőhözvannak hozzárendelve. További információ: Szál és feladatarchitektúra útmutató.

Ha egy lekérdezés fordításkor sorosként van megjelölve (MAXDOP = 1), a számítási feladatcsoporttól vagy a kiszolgáló konfigurációs beállításától függetlenül nem futtatható párhuzamossággal. A lekérdezés MAXDOP meghatározása után csak memóriaterhelés miatt lehet csökkenteni. A számítási feladatcsoport újrakonfigurálása nem befolyásolja a memória-engedélyezési várólistában várakozó lekérdezéseket.

Gyorsítótárazott csomagok

Ha módosít egy olyan tervet, amely hatással van az MAX_DOPbeállításra, az új beállítás csak a korábban gyorsítótárazott csomagokban lép érvénybe a DBCC FREEPROCCACHE (<pool_name>)végrehajtása után, ahol a <pool_name> az aktuális számítási feladatcsoport által használt erőforrás-szabályozó erőforráskészlet neve.

  • Ha MAX_DOP 1-re módosítja, a DBCC FREEPROCCACHE végrehajtása nem szükséges, mert a párhuzamos csomagok soros módban is futtathatók. Előfordulhat azonban, hogy egy ilyen terv kevésbé hatékony, mint egy sorozattervként összeállított terv.
  • Ha MAX_DOP 1-ről 0-ra vagy 1-nél nagyobb értékre módosítja, a DBCC FREEPROCCACHE végrehajtása nem szükséges. A soros tervek azonban nem futtathatók párhuzamosan, ezért a megfelelő gyorsítótár törlése lehetővé teszi, hogy az új tervek párhuzamossággal legyenek lefordítva.

Figyelmeztetés

Ha egynél több számítási feladatcsoporthoz társított erőforráskészletből törli a gyorsítótárazott terveket, az a <pool_name>által azonosított felhasználó által definiált erőforráskészletet használó összes számítási feladatcsoportot érinti.

Index létrehozása

Teljesítménybeli okokból az index létrehozása az eredetileg megadottnál több memória-munkaterületet használhat. Az erőforrás-kormányzó támogatja ezt a speciális kezelést. A kezdeti és a további memóriahasználati engedélyeket azonban a számítási feladatcsoport és az erőforráskészlet beállításai korlátozzák.

A particionált táblákon nem számított index létrehozásához felhasznált memória arányos az érintett partíciók számával. Ha a teljes szükséges memória meghaladja a REQUEST_MAX_MEMORY_GRANT_PERCENT számítási feladatcsoport-beállítás által kikényszerített lekérdezésenkénti korlátot, előfordulhat, hogy az index létrehozása meghiúsul. Mivel a default számítási feladatcsoport lehetővé teszi, hogy a lekérdezések túlléphessék a lekérdezésenkénti korlátot, és a minimálisan szükséges memória a visszamenőleges kompatibilitáshoz kezdődjenek, előfordulhat, hogy a default számítási feladatcsoport használatával is létrehozhatja ugyanazt az indexet, ha a default erőforráskészlet elegendő teljes memóriával rendelkezik.

Engedélyek

A CONTROL SERVER engedélyre van szükség.

Példák

Az alábbi példa bemutatja, hogyan módosíthatja a kérések fontosságát az alapértelmezett csoportban MEDIUM-ről LOW.

ALTER WORKLOAD GROUP [default]
WITH (IMPORTANCE = LOW);

ALTER RESOURCE GOVERNOR RECONFIGURE;

Az alábbi példa bemutatja, hogyan helyezhet át egy számítási feladatcsoportot az aktuálisan default készletbe.

ALTER WORKLOAD GROUP adHoc
USING [default];

ALTER RESOURCE GOVERNOR RECONFIGURE;

* felügyelt SQL-példány *  

 

SQL Server és felügyelt SQL-példány

Módosít egy meglévő erőforrás-kormányzó számítási feladatcsoport konfigurációját, és opcionálisan hozzárendeli egy másik erőforrás-vezérlő erőforráskészletéhez.

Jegyzet

A felügyelt Azure SQL-példány erőforrás-vezérlő konfigurációjának módosításához az elsődleges replikán lévő adatbázis környezetében master kell lennie.

Transact-SQL szintaxis konvenciói.

Szintaxis

ALTER WORKLOAD GROUP { group_name | [ default ] }
[ 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 ]
      [ [ , ] GROUP_MAX_TEMPDB_DATA_MB = value ]
      [ [ , ] GROUP_MAX_TEMPDB_DATA_PERCENT = value ] )
]
[ USING { pool_name | [default] } ]
[ ; ]

Érvek

group_name | [alapértelmezett]

Egy meglévő felhasználó által definiált számítási feladatcsoport vagy az erőforrás-kormányzó beépített default számítási feladatcsoport neve.

default zárójelben ([]) vagy idézőjelben ("") kell lennie, ha ALTER WORKLOAD GROUP használ, hogy elkerülje a DEFAULTvaló ütközést, amely egy rendszer által fenntartott szó. További információ: Adatbázis-azonosítók.

A beépített erőforráskészletek és számítási feladatok minden kisbetűs nevet használnak, például default. Használja a kisbetűs default a kis- és nagybetűk megkülönböztetésével rendelkező kiszolgálókon. A kis- és nagybetűket nem érzékelyítő rendezéssel rendelkező kiszolgálók default, Defaultés DEFAULT azonos értékként kezelik.

FONTOSSÁG = { LOW | KÖZEPES | MAGAS }

A kérelem relatív fontosságát határozza meg a számítási feladatcsoportban. Az alapértelmezett érték a MEDIUM.

IMPORTANCE a számítási feladatcsoportot tartalmazó erőforráskészlethez tartozik. Az ugyanazon erőforráskészleten belül eltérő fontosságú számítási feladatok csoportjai hatással vannak egymásra, de nem érintik a többi erőforráskészlet számítási feladatainak csoportjait.

REQUEST_MAX_MEMORY_GRANT_PERCENT = érték

Megadja a lekérdezési munkaterület memóriájának maximális mennyiségét, amelyet egyetlen kérés vehet át a készletből. érték a MAX_MEMORY_PERCENTáltal meghatározott erőforráskészlet-méret százalékos aránya. Az alapértelmezett érték 25.

Az SQL Server 2017 -ben (14.x) és régebbi verzióiban érték egész szám, az engedélyezett tartomány pedig 1 és 100 között lehet.

Az SQL Server 2019 -től kezdve (15.x) az érték a float adattípus használatával tört lehet. Az engedélyezett tartomány 0 és 100 között lehet.

Fontos

A megadott mennyiség csak a lekérdezési munkaterület memóriájának lekérdezési memória-vissza nem adása révén kapott memóriára vonatkozik.

Nem ajánlott túl nagy értéket beállítani (például 70-nél nagyobb), mert előfordulhat, hogy a kiszolgáló nem tud elegendő szabad memóriát félretenni más egyidejű lekérdezésekhez. Ez memóriahasználati időtúllépéshez vezethet, 8645-ös- hiba.

Ha értéket 0 értékre vagy egy kis értékre állítja, azzal megakadályozhatja, hogy a munkaterületi memóriát igénylő operátorokkal (például sort és hash) futó lekérdezések a felhasználó által meghatározott számítási feladatok csoportjaiban fussanak. Ha a lekérdezés memóriakövetelményei túllépik a paraméter által meghatározott korlátot, a következő viselkedés következik be:

  • A felhasználó által definiált számítási feladatok csoportjai esetében a kiszolgáló megpróbálja csökkenteni a kérés (lekérdezés) párhuzamossági fokát addig, amíg a memóriaigény nem éri el a korlátot, vagy amíg a DOP értéke nem 1. Ha a lekérdezés memóriakövetelménye továbbra is meghaladja a korlátot, a 8657-ös hiba lép fel, és a lekérdezés meghiúsul.
  • A internal és default számítási feladatcsoportok esetében a kiszolgáló engedélyezi a lekérdezés számára a szükséges memória beszerzését.

Mindkét esetben 8645-ös hiba fordulhat elő, ha a kiszolgáló nem rendelkezik elegendő fizikai memóriával.

REQUEST_MAX_CPU_TIME_SEC = érték

Megadja, hogy a kötegkérelmek maximálisan mennyi processzoridőt használhatnak másodpercben. értéknek 0-nak vagy pozitív egész számnak kell lennie. Az érték alapértelmezett beállítása 0, ami korlátlan értéket jelent.

A maximális cpu-idő túllépésekor a rendszer létrehozza a cpu_threshold_exceeded kiterjesztett eseményt és egy nyomkövetési eseményt. További információ: A cpu küszöbértéke túllépte az eseményosztályt.

A felügyelt Azure SQL-példányban a maximális cpu-idő túllépésekor az erőforrás-vezérlő 10961-os hibával megszakítja a kérést.

Az SQL Serverben az erőforrás-vezérlő alapértelmezés szerint nem szakítja meg a kérést. Az SQL Server 2016 (13.x) SP2 és az SQL Server 2017 (14.x) CU3 verziótól kezdve azonban az erőforrás-vezérlő megszakít egy 10961-s hibát tartalmazó kérést, ha 2422- nyomkövetési jelző engedélyezve van, és túllépi a maximális processzoridőt.

REQUEST_MEMORY_GRANT_TIMEOUT_SEC = érték

Másodpercekben megadott maximális időt adja meg, amíg a lekérdezések a lekérdezés munkaterületének memóriájából memóriakiadást biztosítanak. értéknek 0-nak vagy pozitív egész számnak kell lennie. A érték alapértelmezett beállítása, 0, a lekérdezési költség alapján egy belső számítást használ a maximális idő meghatározásához.

A lekérdezések nem mindig hiúsulnak meg, ha a memóriahasználati időt túllépik. A lekérdezések csak akkor sikertelenek, ha túl sok egyidejű lekérdezés fut. Ellenkező esetben előfordulhat, hogy a lekérdezés csak a minimális memóriakiadást kapja, ami csökkentett lekérdezési teljesítményt eredményez.

MAX_DOP = érték

A párhuzamos lekérdezések végrehajtásának maximális párhuzamossági fokát (MAXDOP) adja meg. A érték megengedett tartománya 0 és 64 között lehet. A érték alapértelmezett beállítása, 0, a globális beállítást használja.

További információ: MAXDOP.

GROUP_MAX_REQUESTS = érték

Megadja az egyidejű kérelmek maximális számát, amelyek a számítási feladatcsoportban végrehajthatók. értéknek 0-nak vagy pozitív egész számnak kell lennie. A érték alapértelmezett beállítása 0, és korlátlan kéréseket tesz lehetővé. A maximális egyidejű kérések elérésekor létrehozhat egy munkamenetet az adott csoportban, de várakozási állapotba kerül, amíg az egyidejű kérések száma a megadott érték alá nem csökken.

GROUP_MAX_TEMPDB_DATA_MB = érték

Megadja, hogy egy számítási feladatcsoport mekkora területet használhat fel az tempdb adatfájlokban megabájtban. az értéknek 0-nak, pozitív számnak vagy NULLNAK kell lennie. A törtértékek megengedettek.

Ha az érték 0, tempdb a tevékenységprofil-csoportban lévő munkamenetek által kiosztott terület nem engedélyezett. Ha egy érték nincs beállítva, az erőforrás-vezérlő nem korlátozza tempdb a számítási feladatcsoport által a területfelhasználást.

A korlát a számítási feladatcsoport összes munkamenete tempdb által felhasznált teljes területre vonatkozik.

Ha egy számítási feladatcsoportban futó kérés megkísérli növelni tempdb az adatterület-használatot a számítási feladatcsoport által GROUP_MAX_TEMPDB_DATA_MBbeállított korlát felett, az erőforrás-kormányzó 1138-ás hibával megszakítja a kérést. További információ: Tempdb space resource governance.

GROUP_MAX_TEMPDB_DATA_PERCENT = érték

Megadja, hogy egy számítási feladatcsoport mekkora területet használhat fel az tempdb adatfájlokban a maximális tempdb méret százalékában. A maximális tempdb méret definícióját a Százalékos korlát konfigurációja című témakörben talál. az értéknek 0 és 100 közötti tartományban kell lennie, vagyis NULL. A törtértékek megengedettek.

Ha az érték 0, tempdb a tevékenységprofil-csoportban lévő munkamenetek által kiosztott terület nem engedélyezett. Ha egy érték nincs beállítva, az erőforrás-vezérlő nem korlátozza tempdb a számítási feladatcsoport által a területfelhasználást. Ha GROUP_MAX_TEMPDB_DATA_MB be van állítva, vagy ha tempdb a maximális méret nincs meghatározva, GROUP_MAX_TEMPDB_DATA_PERCENT nincs hatása.

A korlát a számítási feladatcsoport összes munkamenete tempdb által felhasznált teljes területre vonatkozik.

Ha egy számítási feladatcsoportban futó kérés megkísérli növelni tempdb az adatterület-használatot a számítási feladatcsoport által GROUP_MAX_TEMPDB_DATA_PERCENTbeállított korlát felett, az erőforrás-kormányzó 1138-ás hibával megszakítja a kérést. További információ: Tempdb space resource governance.

USING { pool_name | [ alapértelmezett ] }

A számítási feladatcsoportot a pool_nameáltal azonosított felhasználó által definiált erőforráskészlethez vagy a default erőforráskészlethez társítja. Ha nincs megadva pool_name, vagy ha a USING argumentum nincs megadva, a számítási feladatcsoport a beépített default készlethez van társítva.

default fenntartott szó, és ha az USINGvan megadva, szögletes zárójelek ([]) vagy idézőjelek ("") közé kell tenni.

A beépített erőforráskészletek és számítási feladatok minden kisbetűs nevet használnak, például default. Használja a kisbetűs default a kis- és nagybetűk megkülönböztetésével rendelkező kiszolgálókon. A kis- és nagybetűket nem érzékelyítő rendezéssel rendelkező kiszolgálók default, Defaultés DEFAULT azonos értékként kezelik.

Megjegyzések

ALTER WORKLOAD GROUP a default számítási feladatcsoportban engedélyezett, a internal csoportban azonban nem.

A számítási feladatcsoport konfigurációjának módosításai csak a ALTER RESOURCE GOVERNOR RECONFIGURE végrehajtása után lépnek érvénybe.

További információ: Erőforrás-kormányzó és Erőforrás-kormányzó számítási feladatcsoport.

MAXDOP

Egy adott lekérdezés esetében a tényleges MAXDOP az alábbiak szerint határozzuk meg:

A MAXDOP korlát tevékenységenkéntvan beállítva. Ez nem kérésenként vagy lekérdezési korlátonként. Egy párhuzamos lekérdezés végrehajtása során egyetlen kérés több feladatot is létrehozhat, amelyek egy ütemezőhözvannak hozzárendelve. További információ: Szál és feladatarchitektúra útmutató.

Ha egy lekérdezés fordításkor sorosként van megjelölve (MAXDOP = 1), a számítási feladatcsoporttól vagy a kiszolgáló konfigurációs beállításától függetlenül nem futtatható párhuzamossággal. A lekérdezés MAXDOP meghatározása után csak memóriaterhelés miatt lehet csökkenteni. A számítási feladatcsoport újrakonfigurálása nem befolyásolja a memória-engedélyezési várólistában várakozó lekérdezéseket.

Gyorsítótárazott csomagok

Ha módosít egy olyan tervet, amely hatással van az MAX_DOPbeállításra, az új beállítás csak a korábban gyorsítótárazott csomagokban lép érvénybe a DBCC FREEPROCCACHE (<pool_name>)végrehajtása után, ahol a <pool_name> az aktuális számítási feladatcsoport által használt erőforrás-szabályozó erőforráskészlet neve.

  • Ha MAX_DOP 1-re módosítja, a DBCC FREEPROCCACHE végrehajtása nem szükséges, mert a párhuzamos csomagok soros módban is futtathatók. Előfordulhat azonban, hogy egy ilyen terv kevésbé hatékony, mint egy sorozattervként összeállított terv.
  • Ha MAX_DOP 1-ről 0-ra vagy 1-nél nagyobb értékre módosítja, a DBCC FREEPROCCACHE végrehajtása nem szükséges. A soros tervek azonban nem futtathatók párhuzamosan, ezért a megfelelő gyorsítótár törlése lehetővé teszi, hogy az új tervek párhuzamossággal legyenek lefordítva.

Figyelmeztetés

Ha egynél több számítási feladatcsoporthoz társított erőforráskészletből törli a gyorsítótárazott terveket, az a <pool_name>által azonosított felhasználó által definiált erőforráskészletet használó összes számítási feladatcsoportot érinti.

Index létrehozása

Teljesítménybeli okokból az index létrehozása az eredetileg megadottnál több memória-munkaterületet használhat. Az erőforrás-kormányzó támogatja ezt a speciális kezelést. A kezdeti és a további memóriahasználati engedélyeket azonban a számítási feladatcsoport és az erőforráskészlet beállításai korlátozzák.

A particionált táblákon nem számított index létrehozásához felhasznált memória arányos az érintett partíciók számával. Ha a teljes szükséges memória meghaladja a REQUEST_MAX_MEMORY_GRANT_PERCENT számítási feladatcsoport-beállítás által kikényszerített lekérdezésenkénti korlátot, előfordulhat, hogy az index létrehozása meghiúsul. Mivel a default számítási feladatcsoport lehetővé teszi, hogy a lekérdezések túlléphessék a lekérdezésenkénti korlátot, és a minimálisan szükséges memória a visszamenőleges kompatibilitáshoz kezdődjenek, előfordulhat, hogy a default számítási feladatcsoport használatával is létrehozhatja ugyanazt az indexet, ha a default erőforráskészlet elegendő teljes memóriával rendelkezik.

Engedélyek

A CONTROL SERVER engedélyre van szükség.

Példák

Az alábbi példa bemutatja, hogyan módosíthatja a kérések fontosságát az alapértelmezett csoportban MEDIUM-ről LOW.

ALTER WORKLOAD GROUP [default]
WITH (IMPORTANCE = LOW);

ALTER RESOURCE GOVERNOR RECONFIGURE;

Az alábbi példa bemutatja, hogyan helyezhet át egy számítási feladatcsoportot az aktuálisan default készletbe.

ALTER WORKLOAD GROUP adHoc
USING [default];

ALTER RESOURCE GOVERNOR RECONFIGURE;

felügyelt SQL-példány

* Azure Synapse
Elemzés *
 

 

Azure Synapse Analytics

Módosít egy meglévő számítási feladatcsoportot.

Az ALTER WORKLOAD GROUP viselkedési szakaszában további információt talál arról, hogyan viselkedik ALTER WORKLOAD GROUP egy rendszeren futó és várólistás kérésekkel.

A SZÁMÍTÁSI FELADATCSOPORT LÉTREHOZÁSA vonatkozó korlátozások a ALTER WORKLOAD GROUPis érvényesek. A paraméterek módosítása előtt lekérdezési sys.workload_management_workload_groups annak biztosítása érdekében, hogy az értékek elfogadható tartományokon belül legyenek.

Szintaxis

ALTER 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 ] )
  [ ; ]

Érvek

group_name

A módosítás alatt álló, felhasználó által definiált számítási feladatcsoport neve. group_name nem változtatható meg.

MIN_PERCENTAGE_RESOURCE = érték

érték 0 és 100 közötti egész számtartomány. A MIN_PERCENTAGE_RESOURCE módosításakor az összes számítási feladatcsoport MIN_PERCENTAGE_RESOURCE összege nem haladhatja meg a 100-t. A MIN_PERCENTAGE_RESOURCE módosításához a számítási feladatcsoport összes futó lekérdezésének befejeződnie kell, mielőtt a parancs befejeződik. További információt a jelen cikk ALTER SZÁMÍTÁSI FELADATCSOPORT viselkedésének szakaszában talál.

CAP_PERCENTAGE_RESOURCE = érték

érték 1 és 100 közötti egész számtartomány. A CAP_PERCENTAGE_RESOURCE értékének nagyobbnak kell lennie, mint MIN_PERCENTAGE_RESOURCE. A CAP_PERCENTAGE_RESOURCE módosításához a számítási feladatcsoport összes futó lekérdezésének befejeződnie kell, mielőtt a parancs befejeződik. További információt a jelen cikk ALTER SZÁMÍTÁSI FELADATCSOPORT viselkedésének szakaszában talál.

REQUEST_MIN_RESOURCE_GRANT_PERCENT = érték

érték 0,75 és 100,00 közötti tizedes tört. A REQUEST_MIN_RESOURCE_GRANT_PERCENT értékének MIN_PERCENTAGE_RESOURCE tényezőnek kell lennie, és kisebbnek kell lennie, mint CAP_PERCENTAGE_RESOURCE.

REQUEST_MAX_RESOURCE_GRANT_PERCENT = érték

érték decimális, és nagyobbnak kell lennie, mint REQUEST_MIN_RESOURCE_GRANT_PERCENT.

FONTOSSÁG = { LOW | BELOW_NORMAL | NORMAL | ABOVE_NORMAL | MAGAS }

Módosítja a számítási feladatcsoportra vonatkozó kérések alapértelmezett fontosságát.

QUERY_EXECUTION_TIMEOUT_SEC = érték

Másodpercben módosítja a lekérdezések megszakítása előtt végrehajtható maximális időtartamot. Az értéknek 0-nak vagy pozitív egész számnak kell lennie. Az érték alapértelmezett beállítása 0, ami korlátlan értéket jelent.

Engedélyek

CONTROL DATABASE engedélyre van szükség.

Példa

Az alábbi példa egy wgDataLoadsnevű számítási feladatcsoport katalógusnézetében lévő értékeket ellenőrzi, és módosítja az értékeket.

SELECT *
FROM sys.workload_management_workload_groups
WHERE [name] = 'wgDataLoads'

ALTER WORKLOAD GROUP wgDataLoads WITH
( MIN_PERCENTAGE_RESOURCE            = 40
, CAP_PERCENTAGE_RESOURCE            = 80
, REQUEST_MIN_RESOURCE_GRANT_PERCENT = 10 )

SZÁMÍTÁSI FELADATCSOPORT VISELKEDÉSÉNEK MÓDOSÍTÁSA

A rendszerben bármikor háromféle kérés létezik:

  • Még nem besorolt kérelmek.
  • Objektumzárolásra vagy rendszererőforrásokra vonatkozó besorolással és várakozással rendelkező kérések.
  • A besorolt és futó kérések.

A módosítandó számítási feladatcsoport tulajdonságai alapján a beállítások érvénybe lépésének időzítése eltérő lesz.

Fontosság vagy query_execution_timeout

A tulajdonságok fontossága és query_execution_timeout érdekében a nem besorolt kérések felveszik az új konfigurációs értékeket. A várakozási és a futtatási kérések a régi konfigurációval futnak. A ALTER WORKLOAD GROUP kérés azonnal végrehajtva, függetlenül attól, hogy futnak-e lekérdezések a számítási feladatcsoportban.

REQUEST_MIN_RESOURCE_GRANT_PERCENT vagy REQUEST_MAX_RESOURCE_GRANT_PERCENT

A REQUEST_MIN_RESOURCE_GRANT_PERCENT és a REQUEST_MAX_RESOURCE_GRANT_PERCENT esetében a futó kérések a régi konfigurációval futnak. A várakozási kérelmek és a nem besorolt kérések felveszik az új konfigurációs értékeket. A ALTER WORKLOAD GROUP kérés azonnal végrehajtva, függetlenül attól, hogy futnak-e lekérdezések a számítási feladatcsoportban.

MIN_PERCENTAGE_RESOURCE vagy CAP_PERCENTAGE_RESOURCE

MIN_PERCENTAGE_RESOURCE és CAP_PERCENTAGE_RESOURCE esetén a futó kérések a régi konfigurációval futnak. A várakozási kérelmek és a nem besorolt kérések felveszik az új konfigurációs értékeket.

A MIN_PERCENTAGE_RESOURCE és a CAP_PERCENTAGE_RESOURCE módosításához le kell üríteni a futó kéréseket a módosítandó számítási feladatcsoportban. A MIN_PERCENTAGE_RESOURCE csökkentésekor a rendszer visszaadja a felszabadított erőforrásokat a megosztási készletnek, így a többi számítási feladatcsoporttól érkező kérések kihasználhatók. Ezzel szemben a MIN_PERCENTAGE_RESOURCE növelése megvárja, amíg a kérések csak a megosztott készletből származó szükséges erőforrásokat használják a befejezéshez. A ALTER WORKLOAD GROUP művelet elsőbbséget kap a megosztott erőforrásokhoz a megosztott készleten végrehajtandó egyéb kérésekkel szemben. Ha a MIN_PERCENTAGE_RESOURCE összege meghaladja a 100%, a ALTER WORKLOAD GROUP kérés azonnal meghiúsul.

Zárolási viselkedés

A számítási feladatok csoportjának módosítása globális zárolást igényel az összes számítási feladatcsoportban. A számítási feladatok csoportjának módosítására irányuló kérések a már elküldött létrehozási vagy elvetési számítási feladatcsoport-kérelmek mögé kerülnek. Ha egy kötegnyi alter utasítást egyszerre küld el, a feldolgozásuk a beküldés sorrendjében történik.

Lásd még: