Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik: SQL Server 2016 (13.x) és újabb verziók
Megtudhatja, hogyan hozhat létre és használhat erőforráskészletet Python és R számítási feladatok kezeléséhez SQL Server Machine Learning Szolgáltatásokban.
A folyamat több lépést is tartalmaz:
- Tekintse át a meglévő erőforráskészletek állapotát. Fontos tisztában lenni azzal, hogy mely szolgáltatások használják a meglévő erőforrásokat.
- Kiszolgálói erőforráskészletek módosítása.
- Hozzon létre egy új erőforráskészletet külső folyamatokhoz.
- Hozzon létre egy besorolási függvényt a külső szkriptkérelmek azonosításához.
- Ellenőrizze, hogy az új külső erőforráskészlet R- vagy Python-feladatokat rögzít-e a megadott ügyfelekről vagy fiókokból.
Meglévő erőforráskészletek állapotának áttekintése
Az alábbihoz hasonló utasítással ellenőrizheti a kiszolgáló alapértelmezett készletéhez rendelt erőforrásokat.
SELECT * FROM sys.resource_governor_resource_pools WHERE name = 'default'Mintaeredmények
pool_id name min_cpu_percent max_cpu_percent min_memory_percent max_memória_százalék cap_cpu_percent min_iops_per_volume max_iops_per_volume 2 alapértelmezett 0 100 0 100 100 0 0 Ellenőrizze az alapértelmezett külső erőforráskészlethez rendelt erőforrásokat.
SELECT * FROM sys.resource_governor_external_resource_pools WHERE name = 'default'Mintaeredmények
external_pool_id name max_cpu_percent max_memória_százalék max_processes verzió 2 alapértelmezett 100 20 0 2 A kiszolgáló alapértelmezett beállításai között a külső futtatókörnyezet valószínűleg nem rendelkezik elegendő erőforrással a legtöbb feladat elvégzéséhez. Az erőforrások javításához az alábbiak szerint kell módosítania a kiszolgáló erőforrás-használatát:
Csökkentse az adatbázismotor által használható maximális számítógépmemóriát.
Növelje a külső folyamat által használható maximális számítógépmemóriát.
Kiszolgálói erőforrás-használat módosítása
A Management Studióban futtassa a következő utasítást, amely SQL Server memóriahasználatot a "maximális kiszolgálómemória" beállítás értékének 60% értékére korlátozza.
ALTER RESOURCE POOL "default" WITH (max_memory_percent = 60);Futtassa az alábbi utasítást a memória külső folyamatok általi használatának 40% teljes számítógép-erőforrásra való korlátozásához.
ALTER EXTERNAL RESOURCE POOL "default" WITH (max_memory_percent = 40);A módosítások kikényszerítéséhez újra kell konfigurálnia és újra kell indítania Resource Governor az alábbiak szerint:
ALTER RESOURCE GOVERNOR RECONFIGURE;Megjegyzés:
Ezek csak javasolt beállítások, amelyeket először el kell kezdeni; a gépi tanulási feladatokat más kiszolgálói folyamatok fényében kell kiértékelnie, hogy megállapíthassa a környezet és a számítási feladat megfelelő egyensúlyát.
Felhasználó által definiált külső erőforráskészlet létrehozása
A Resource Governor konfigurációjának minden módosítása a kiszolgáló egészére érvényes. A módosítások hatással vannak a kiszolgáló alapértelmezett készleteit használó számítási feladatokra, valamint a külső készleteket használó számítási feladatokra.
Ha részletesebben szeretné szabályozni, hogy mely számítási feladatoknak legyen elsőbbsége, létrehozhat egy új, felhasználó által definiált külső erőforráskészletet. Definiáljon egy besorolási függvényt, és rendelje hozzá a külső erőforráskészlethez. A KÜLSŐ kulcsszó új.
Hozzon létre egy új , felhasználó által definiált külső erőforráskészletet. A következő példában a pool neve ds_ep.
CREATE EXTERNAL RESOURCE POOL ds_ep WITH (max_memory_percent = 40);Hozzon létre egy
ds_wgnevű munkaterhelési csoportot a munkamenet-kérések kezeléséhez. SQL-lekérdezések esetén az alapértelmezett készletet fogja használni; az összes külső folyamat lekérdezése a készletetds_epfogja használni.CREATE WORKLOAD GROUP ds_wg WITH (importance = medium) USING "default", EXTERNAL "ds_ep";A kérések akkor lesznek hozzárendelve az alapértelmezett csoporthoz, ha a kérés nem besorolható, vagy ha bármilyen más besorolási hiba történt.
További információ: Resource Governor számítási feladatcsoport és CREATE WORKLOAD GROUP (Transact-SQL).
Besorolási függvény létrehozása gépi tanuláshoz
A besorolási függvény megvizsgálja a bejövő feladatokat. Meghatározza, hogy a tevékenység az aktuális erőforráskészlet használatával futtatható-e. Azok a feladatok, amelyek nem felelnek meg a besorolási függvény feltételeinek, a kiszolgáló alapértelmezett erőforráskészletéhez lesznek hozzárendelve.
Először is adja meg, hogy az Resource Governor egy osztályozófüggvényt használjon az erőforráskészletek meghatározásához. Az osztályozófüggvény helyőrzőjeként null értéket rendelhet hozzá.
ALTER RESOURCE GOVERNOR WITH (classifier_function = NULL); ALTER RESOURCE GOVERNOR RECONFIGURE;További információ: ALTER RESOURCE GOVERNOR (Transact-SQL).
Az egyes erőforráskészletek osztályozó függvényében adja meg az erőforráskészlethez hozzárendelendő utasítások vagy bejövő kérések típusát.
A következő függvény például a felhasználó által definiált külső erőforráskészlethez rendelt séma nevét adja vissza, ha a kérelmet küldő alkalmazás "Microsoft R Host", "RStudio" vagy "Mashup", ellenkező esetben az alapértelmezett erőforráskészletet adja vissza.
USE master GO CREATE FUNCTION is_ds_apps() RETURNS sysname WITH schemabinding AS BEGIN IF program_name() in ('Microsoft R Host', 'RStudio', 'Mashup') RETURN 'ds_wg'; RETURN 'default' END; GOA függvény létrehozásakor konfigurálja újra az erőforráscsoportot, hogy az új osztályozófüggvényt a korábban definiált külső erőforráscsoporthoz rendelje.
ALTER RESOURCE GOVERNOR WITH (classifier_function = dbo.is_ds_apps); ALTER RESOURCE GOVERNOR RECONFIGURE; GO
Új erőforráskészletek és affinitás ellenőrzése
Ellenőrizze a kiszolgáló memóriakonfigurációját és processzorát minden számítási feladatcsoport esetében. Ellenőrizze, hogy megtörténtek-e a példány erőforrás-módosításai, a következők áttekintésével:
- az SQL Server-kiszolgáló alapértelmezett készlete
- a külső folyamatok alapértelmezett erőforráskészlete
- a felhasználó által definiált készlet külső folyamatokhoz
Az összes munkaterhelési csoport megjelenítéséhez futtassa a következő utasítást:
SELECT * FROM sys.resource_governor_workload_groups;Mintaeredmények
group_id name fontosság request_max_memory_grant_percent request_max_cpu_time_sec request_memory_grant_timeout_sec max_dop group_max_requests pool_id pool_idd external_pool_id 1 belső Medium 25 0 0 0 0 1 2 2 alapértelmezett Medium 25 0 0 0 0 2 2 256 ds_wg Medium 25 0 0 0 0 2 256 Az új katalógusnézet ( sys.resource_governor_external_resource_pools (Transact-SQL)) használatával megtekintheti az összes külső erőforráskészletet.
SELECT * FROM sys.resource_governor_external_resource_pools;Mintaeredmények
external_pool_id name max_cpu_percent max_memória_százalék max_processes verzió 2 alapértelmezett 100 20 0 2 256 ds_ep 100 40 0 1 További információ: Resource Governor katalógusnézetek (Transact-SQL).
Futtassa a következő utasítást a külső erőforráskészlethez hozzárendelt számítógépes erőforrásokra vonatkozó információk lekéréséhez, adott esetben:
SELECT * FROM sys.resource_governor_external_resource_pool_affinity;Nem jelenik meg információ, mert a poolok AUTO affinitással lettek létrehozva. További információ: sys.dm_resource_governor_resource_pool_affinity (Transact-SQL).
Következő lépések
A kiszolgálói erőforrások kezelésével kapcsolatos további információkért lásd:
A gépi tanulás erőforrás-szabályozásának áttekintése: