sys.dm_exec_query_optimizer_memory_gateways (Transact-SQL)

Vonatkozik a következőkre: SQL Server 2016 (13.x) és későbbi verziók Azure SQL DatabaseAzure SQL Managed InstanceSQL database in Microsoft Fabric

Az egyidejű lekérdezésoptimalizálás csökkentésére használt erőforrás-szemaphorok aktuális állapotát adja vissza.

oszlop Típus Leírás
pool_id int Erőforráskészlet azonosítója az Erőforrás-kormányzó alatt
name sysname Kapunév fordítása (Kis átjáró, Közepes átjáró, Big Gateway)
max_count int Az egyidejű fordítások maximális konfigurált száma
active_count int A jelenleg aktív fordítások száma ebben a kapuban
waiter_count int A pincérek száma ebben a kapuban
threshold_factor bigint A lekérdezésoptimalizálás által használt maximális memóriarészt meghatározó küszöbérték-tényező. A kis átjáró esetében a threshold_factor a maximális optimalizáló memóriahasználatot jelzi bájtban egy lekérdezéshez, mielőtt a kis átjáróhoz való hozzáféréshez szükséges lenne. A közepes és a nagy átjáró esetében threshold_factor az ehhez a kapuhoz elérhető teljes kiszolgálómemória részét jeleníti meg. Megosztóként használják a kapu memóriahasználati küszöbértékének kiszámításakor.
threshold bigint Következő küszöbérték memória bájtban. Ha a memóriahasználat eléri ezt a küszöbértéket, a lekérdezésnek hozzá kell férnie ehhez az átjáróhoz. -1, ha a lekérdezés nem szükséges az átjáróhoz való hozzáféréshez.
is_active bit Azt jelzi, hogy a lekérdezésnek át kell-e adnia az aktuális kaput, vagy sem.

Permissions

SQL Server megköveteli VIEW SERVER STATE engedély a szerveren.

Azure SQL Database megköveteli a VIEWDATABASE STATE engedély az adatbázisban.

Engedélyek az SQL Server 2022-hez és újabb verziókhoz

SERVER PERFORMANCE STATE engedélyt igényel VIEW a szerveren.

Megjegyzések

Az SQL Server rétegzett átjáró megközelítést használ az engedélyezett egyidejű fordítások számának csökkentésére. A rendszer három átjárót használ, köztük a kis, közepes és nagy átjárókat. Az átjárók segítenek megakadályozni a teljes memóriaerőforrások kimerülését a nagyobb fordítási memóriaigényű felhasználók számára.

Az átjárón való várakozás késleltetett fordítást eredményez. A fordítás késleltetése mellett a csökkentett kérelmek RESOURCE_SEMAPHORE_QUERY_COMPILE várakozási típusú halmozódással is járnak. A RESOURCE_SEMAPHORE_QUERY_COMPILE várakozási típus azt jelezheti, hogy a lekérdezések nagy mennyiségű memóriát használnak fordításhoz, és a memória kimerült. Lehetséges, hogy elegendő memória áll rendelkezésre, de egy adott átjáró rendelkezésre álló egységei elfogytak. A sys.dm_exec_query_optimizer_memory_gateways kimenete olyan forgatókönyvek hibaelhárítására használható, amelyekben nem volt elegendő memória a lekérdezés-végrehajtási terv fordításához.

Examples

A. Az erőforrás-szemaphorok statisztikáinak megtekintése

Melyek az SQL Server ezen példányának jelenlegi optimalizáló memóriaátjáró-statisztikái?

SELECT [pool_id], [name], [max_count], [active_count],
       [waiter_count], [threshold_factor], [threshold],
       [is_active]
FROM sys.dm_exec_query_optimizer_memory_gateways;