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


SZÁMÍTÁSI FELADATCSOPORT LÉTREHOZÁ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

Létrehoz egy erőforrás-kormányzó számítási feladatcsoportot, és hozzárendeli a számítási feladatcsoportot egy erőforrás-kormányzó erőforráskészletéhez.

Az erőforrás-vezérlő nem érhető el az SQL Server minden kiadásában. Az SQL Server kiadásai által támogatott funkciók listáját az SQL Server 2022Kiadásai és támogatott funkciói című témakörben találja.

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

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 ]
      [ [ , ] GROUP_MAX_TEMPDB_DATA_MB = value ]
      [ [ , ] GROUP_MAX_TEMPDB_DATA_PERCENT = value ] )
]
[ USING {
    [ pool_name | [default] ]
    [ [ , ] EXTERNAL external_pool_name | [ default ] ]
    } ]
[ ; ]

Érvek

group_name

A számítási feladatcsoport felhasználó által definiált neve. group_name alfanumerikus, legfeljebb 128 karakter hosszúságú lehet, egyedinek kell lennie az adatbázismotor egy példányán belül, és meg kell felelnie adatbázis-azonosítókszabályainak.

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.

Jegyzet

A processzoridő-használat észlelési időköze öt másodperc. Esemény akkor jön létre, ha egy lekérdezés legalább öt másodperccel túllépi a megadott korlátot. Ha azonban egy lekérdezés kevesebb mint öt másodperccel túllépi a megadott küszöbértéket, az észlelése a lekérdezés időzítésétől és a legutóbbi észlelés időpontjától függően kimaradhat.

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.

KÜLSŐ external_pool_name | [ alapértelmezett ]

Az: SQL Server 2016 (13.x) és újabb verziókra vonatkozik.

A számítási feladatcsoport megadhat egy külső erőforráskészletet. Definiálhat egy számítási feladatcsoportot, és két készlethez társíthatja:

  • Erőforráskészlet az adatbázismotor számítási feladataihoz.
  • Külső erőforráskészlet külső folyamatokhoz. További információ: sp_execute_external_script.

Megjegyzések

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.

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

Létrehoz egy newReports nevű számítási feladatcsoportot a default erőforráskészletben, és korlátozza a maximális memóriahasználatot, a kérések maximális processzoridejének és MAXDOP.

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

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

 

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

Létrehoz egy erőforrás-kormányzó számítási feladatcsoportot, és hozzárendeli a számítási feladatcsoportot egy erőforrás-kormányzó erőforráskészletéhez.

Az erőforrás-vezérlő nem érhető el az SQL Server minden kiadásában. Az SQL Server kiadásai által támogatott funkciók listáját az SQL Server 2022Kiadásai és támogatott funkciói című témakörben találja.

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

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 ]
      [ [ , ] GROUP_MAX_TEMPDB_DATA_MB = value ]
      [ [ , ] GROUP_MAX_TEMPDB_DATA_PERCENT = value ] )
]
[ USING {
    [ pool_name | [default] ]
    [ [ , ] EXTERNAL external_pool_name | [ default ] ]
    } ]
[ ; ]

Érvek

group_name

A számítási feladatcsoport felhasználó által definiált neve. group_name alfanumerikus, legfeljebb 128 karakter hosszúságú lehet, egyedinek kell lennie az adatbázismotor egy példányán belül, és meg kell felelnie adatbázis-azonosítókszabályainak.

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.

Jegyzet

A processzoridő-használat észlelési időköze öt másodperc. Esemény akkor jön létre, ha egy lekérdezés legalább öt másodperccel túllépi a megadott korlátot. Ha azonban egy lekérdezés kevesebb mint öt másodperccel túllépi a megadott küszöbértéket, az észlelése a lekérdezés időzítésétől és a legutóbbi észlelés időpontjától függően kimaradhat.

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.

KÜLSŐ external_pool_name | [ alapértelmezett ]

Az: SQL Server 2016 (13.x) és újabb verziókra vonatkozik.

A számítási feladatcsoport megadhat egy külső erőforráskészletet. Definiálhat egy számítási feladatcsoportot, és két készlethez társíthatja:

  • Erőforráskészlet az adatbázismotor számítási feladataihoz.
  • Külső erőforráskészlet külső folyamatokhoz. További információ: sp_execute_external_script.

Megjegyzések

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.

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

Létrehoz egy newReports nevű számítási feladatcsoportot a default erőforráskészletben, és korlátozza a maximális memóriahasználatot, a kérések maximális processzoridejének és MAXDOP.

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

felügyelt SQL-példány

* Azure Synapse
Elemzés *
 

 

Azure Synapse Analytics

Létrehoz egy számítási feladatcsoportot. A számítási feladatok csoportjai egy kéréscsoport tárolói, és a számítási feladatok felügyeletének rendszerbeli konfigurálásának alapjai. A számítási feladatok csoportjai lehetővé teszik az erőforrások lefoglalását a számítási feladatok elkülönítéséhez, erőforrásokat tartalmazhatnak, erőforrásokat határozhatnak meg kérésenként, és betarthatók a végrehajtási szabályok. Az utasítás befejeződése után a beállítások érvénybe lépnek.

Transact-SQL szintaxis konvenciói

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
Azt a nevet adja meg, amellyel a számítási feladatcsoport azonosítható. group_name egy sysname. Legfeljebb 128 karakter hosszú lehet, és egyedinek kell lennie a példányon belül.

MIN_PERCENTAGE_RESOURCE = érték
A többi számítási feladatcsoporttal nem megosztott számítási feladatcsoport garantált minimális erőforrás-lefoglalását adja meg. A paraméter által szabályozott egyetlen erőforrás a memória. érték 0 és 100 közötti egész számtartomány. Az összes számítási feladatcsoport min_percentage_resource összege nem haladhatja meg a 100-t. A min_percentage_resource értéke nem lehet nagyobb, mint cap_percentage_resource. Szolgáltatásszintenként minimális érvényes értékek engedélyezettek. További részletekért lásd az Érvényes értékek című témakört.

CAP_PERCENTAGE_RESOURCE = érték
Egy számítási feladatcsoport összes kérésének maximális erőforrás-kihasználtságát adja meg. Ez a paraméter a cpu- és a memóriaerőforrásokat is megfelelteti. Az érték megengedett egész tartománya 1–100. A cap_percentage_resource értékének nagyobbnak kell lennie, mint min_percentage_resource. A cap_percentage_resource érvényes értéke csökkenthető, ha min_percentage_resource nullánál nagyobb értéket konfigurál más számítási feladatok csoportjaiban.

REQUEST_MIN_RESOURCE_GRANT_PERCENT =
a kérelemenként lefoglalt erőforrások minimális mennyiségét állítja be. A paraméter által szabályozott egyetlen erőforrás a memória. érték egy kötelező paraméter, amelynek decimális tartománya 0,75 és 100,00 között van. A request_min_resource_grant_percent értékének 0,25 többszörösének kell lennie, min_percentage_resource tényezőnek kell lennie, és kisebbnek kell lennie, mint cap_percentage_resource. Szolgáltatásszintenként minimális érvényes értékek engedélyezettek. További részletekért lásd az Érvényes értékek című témakört.

Például:

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 )

Tekintse át az erőforrásosztályokhoz használt értékeket a request_min_resource_grant_percent útmutatójaként. Az alábbi táblázat a Gen2 erőforrás-lefoglalásait tartalmazza.

Erőforrásosztály Erőforrások százalékos aránya
Smallrc 3%
Mediumrc 10%
Nagyobb 22%
Xlargerc 70%

REQUEST_MAX_RESOURCE_GRANT_PERCENT = érték

A kérelemenként lefoglalt erőforrások maximális mennyiségét állítja be. A paraméter által szabályozott egyetlen erőforrás a memória. érték nem kötelező decimális paraméter, amelynek alapértelmezett értéke megegyezik a request_min_resource_grant_percent. értéknek nagyobbnak vagy egyenlőnek kell lennie, mint request_min_resource_grant_percent. Ha a request_max_resource_grant_percent értéke nagyobb, mint request_min_resource_grant_percent és a rendszererőforrások rendelkezésre állnak, a rendszer további erőforrásokat rendel egy kéréshez.

FONTOSSÁGI = { LOW | BELOW_NORMAL | NORMAL | ABOVE_NORMAL | HIGH }

Megadja a számítási feladatcsoportra vonatkozó kérések alapértelmezett fontosságát. A fontosság az alábbiak egyike, alapértelmezés szerint a NORMAL a következő:

  • ALACSONY
  • BELOW_NORMAL
  • NORMÁL (alapértelmezett)
  • ABOVE_NORMAL
  • MAGAS

A számítási feladatcsoportban beállított fontosság a számítási feladatcsoport összes kérésének alapértelmezett fontossága. A felhasználó az osztályozó szintjén is beállíthat fontosságot, ami felülírhatja a számítási feladatcsoport fontossági beállítását. Ez lehetővé teszi a számítási feladatcsoporton belüli kérések fontossági különbségeinek megkülönböztetését, hogy gyorsabban hozzáférjenek a nem fenntartott erőforrásokhoz. Ha a számítási feladatok csoportjai közötti min_percentage_resource összege kisebb, mint 100, vannak olyan nem fenntartott erőforrások, amelyek fontossági alapon vannak hozzárendelve.

QUERY_EXECUTION_TIMEOUT_SEC = érték

Másodpercben megadja, hogy a lekérdezések a megszakítás előtt maximálisan végrehajthatók-e. értéknek 0-nak vagy pozitív egész számnak kell lennie. Az érték alapértelmezett beállítása 0, amelyet a lekérdezés soha nem időz. QUERY_EXECUTION_TIMEOUT_SEC számolja, ha a lekérdezés fut, és nem akkor, amikor a lekérdezés várólistára kerül.

Megjegyzések

Az erőforrásosztályoknak megfelelő számítási feladatok csoportjai automatikusan jönnek létre a visszamenőleges kompatibilitás érdekében. Ezeket a rendszer által definiált számítási feladatcsoportokat nem lehet elvetni. További 8 felhasználó által definiált számítási feladatcsoport hozható létre.

Ha egy számítási feladatcsoportot nullánál nagyobb min_percentage_resource hoz létre, a CREATE WORKLOAD GROUP utasítás mindaddig várólistára kerül, amíg nincs elegendő erőforrás a számítási feladatcsoport létrehozásához.

Érvényes értékek

A paraméterek min_percentage_resource, cap_percentage_resource, request_min_resource_grant_percent és request_max_resource_grant_percent olyan hatékony értékekkel rendelkeznek, amelyek az aktuális szolgáltatási szint és a többi számítási feladatcsoport konfigurációja kontextusában vannak módosítva.

A request_min_resource_grant_percent paraméter érvényes értékkel rendelkezik, mivel lekérdezésenként minimális erőforrásokra van szükség a szolgáltatásszinttől függően. A legalacsonyabb szolgáltatási szinten (DW100c) például kérésenként legalább 25% erőforrásra van szükség. Ha a számítási feladatcsoport 3% request_min_resource_grant_percent és request_max_resource_grant_percentvan konfigurálva, mindkét paraméter érvényes értékei a példány indításakor 25% értékre módosulnak. Ha a példány DW1000c értékre van skálázva, a konfigurált és érvényes értékek mindkét paraméter esetében 3%, mivel a 3% a minimális támogatott érték ezen a szolgáltatásszinten. Ha a példány mérete nagyobb, mint a DW1000c, akkor mindkét paraméter konfigurált és hatékony értékei 3%maradnak. Az alábbi táblázat további részleteket tartalmaz a különböző szolgáltatási szinteken érvényes értékekről.

Szolgáltatási szint Legalacsonyabb érvényes érték REQUEST_MIN_RESOURCE_GRANT_PERCENT Egyidejű lekérdezések maximális száma
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

A min_percentage_resource paraméternek nagyobbnak vagy egyenlőnek kell lennie a tényleges request_min_resource_grant_percent. A min_percentage_resource hatékonyabb min_percentage_resource konfigurált számítási feladatcsoport futásidőben nullára van állítva. Ilyen esetben a min_percentage_resource konfigurált erőforrások minden számítási feladatcsoportban megoszthatóak. Például a DW1000c-en futó 10% wgAdHocmin_percentage_resource számítási feladatcsoport tényleges min_percentage_resource 10% (3% a DW1000c minimális támogatott értéke). wgAdhoc DW100c-nél 0%hatékony min_percentage_resource lenne. A wgAdhoc konfigurált 10% minden számítási feladatcsoportban meg lesz osztva.

A cap_percentage_resource paraméter érvényes értékkel is rendelkezik. Ha egy számítási feladatcsoport wgAdhoc 100% cap_percentage_resource van konfigurálva, és egy másik számítási csoport wgDashboards 25% min_percentage_resourcehoz létre, a cap_percentage_resource tényleges wgAdhoc 75%lesz.

A számítási feladatok csoportjai futásidejű értékeinek megismerésének legegyszerűbb módja a rendszernézet lekérdezése sys.dm_workload_management_workload_groups_stats.

Engedélyek

CONTROL DATABASE engedélyre van szükség

Lásd még: