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.
Vonatkozik a következőkre: SQL Server 2016 (13.x) és későbbi verziók
Azure SQL Database
Azure SQL Managed Instance
SQL database in Microsoft Fabric
A gyorsítótárazott függvények összesített teljesítménystatisztikáit adja vissza. A nézet minden gyorsítótárazott függvénytervhez egy sort ad vissza, a sor élettartama pedig addig tart, amíg a függvény gyorsítótárazva marad. Ha egy függvényt eltávolít a gyorsítótárból, a megfelelő sor ki lesz távolítva ebből a nézetből. Ekkor a teljesítménystatisztika SQL-nyomkövetési eseménye a sys.dm_exec_query_stats-hoz hasonlóan jön létre. Információkat ad vissza a skaláris függvényekről, beleértve a memóriában lévő függvényeket és a CLR skaláris függvényeket. Nem ad vissza információt a táblaértékelő függvényekről és a skaláris függvényekről, amelyek beágyazottak a Skaláris UDF-aláhúzással.
Az Azure SQL Database-ben a dinamikus felügyeleti nézetek nem tehetnek közzé olyan információkat, amelyek hatással lennének az adatbázis-elszigetelésre, vagy nem tehetnek közzé információkat más olyan adatbázisokról, amelyekhez a felhasználó hozzáfér. Az információk felfedésének elkerülése érdekében a rendszer kiszűr minden olyan sort, amely nem a csatlakoztatott bérlőhöz tartozó adatokat tartalmaz.
Megjegyzés:
A sys.dm_exec_function_stats eredményei az egyes végrehajtások függvényében változhatnak, mivel az adatok csak a befejezett lekérdezéseket tükrözik, a még folyamatban lévőket nem.
| Oszlop név | Adattípus | Description |
|---|---|---|
| database_id | int | Adatbázis-azonosító, amelyben a függvény található. Az Azure SQL Database-ben az értékek egyediek egyetlen adatbázisban vagy rugalmas készletben, de nem logikai kiszolgálón belül. |
| object_id | int | A függvény objektumazonosítási száma. |
| type | char(2) | Az objektum típusa: FN = Skaláris értékű függvények |
| type_desc | nvarchar(60) | Az objektumtípus leírása: SQL_SCALAR_FUNCTION |
| sql_handle | varbinary(64) | Ezzel korrelálhat a függvényen belül végrehajtott sys.dm_exec_query_stats lekérdezéseivel. |
| plan_handle | varbinary(64) | A memóriabeli terv azonosítója. Ez az azonosító átmeneti, és csak addig marad állandó, amíg a terv a gyorsítótárban marad. Ez az érték a sys.dm_exec_cached_plans dinamikus felügyeleti nézettel használható. Mindig 0x000 lesz, ha egy natívan lefordított függvény lekérdez egy memóriaoptimalizált táblát. |
| cached_time | datetime | A függvény gyorsítótárhoz való hozzáadásának időpontja. |
| utolsó_végrehajtási_idő | datetime | A függvény végrehajtásának utolsó időpontja. |
| végrehajtások_száma | bigint | A függvény végrehajtásának száma a legutóbbi fordítás óta. |
| teljes_dolgozói_idő | bigint | A függvény végrehajtása során felhasznált processzoridő teljes mennyisége mikroszekundumokban, a fordítás óta. Natívan lefordított függvények esetén előfordulhat, hogy total_worker_time nem pontosak, ha sok végrehajtás kevesebb mint 1 ezredmásodpercet vesz igénybe. |
| last_worker_time | bigint | A függvény utolsó végrehajtásakor felhasznált processzoridő mikroszekundumokban. 1 |
| min_worker_time | bigint | Minimális processzorhasználati idő mikroszekundumokban, amelyeket ez a függvény valaha is felhasznált egyetlen végrehajtás során. 1 |
| max_worker_time | bigint | A maximális processzorhasználati idő mikroszekundumokban, amelyeket ez a függvény valaha is felhasznált egyetlen végrehajtás során. 1 |
| összes_fizikai_olvasás | bigint | A függvény végrehajtások által végrehajtott fizikai olvasások teljes száma a lefordítása óta. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| utolsó fizikai olvasások | bigint | A függvény legutóbbi végrehajtásakor végrehajtott fizikai olvasások száma. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| minimális fizikai olvasások | bigint | A függvény által egyetlen végrehajtás során valaha végrehajtott fizikai olvasások minimális száma. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| max_physical_reads | bigint | A függvény által egyetlen végrehajtás során valaha végrehajtott fizikai olvasások maximális száma. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| total_logikai_írások | bigint | A függvény végrehajtásainak végrehajtott logikai írások teljes száma a fordítási folyamat óta. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| utolsó_logikai_írások | bigint | Azon pufferkészletoldalak száma, amelyek a terv legutóbbi végrehajtásakor koszosodtak. Ha egy oldal már piszkos (módosított), a rendszer nem számol írásokat. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| minimális_logikai_írások | bigint | Azoknak a logikai írásoknak a minimális száma, amelyeket ez a függvény valaha is végrehajtott egyetlen végrehajtás során. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| max_logical_writes (maximális logikai írások) | bigint | Azoknak a logikai írásoknak a maximális száma, amelyeket ez a függvény valaha is végrehajtott egyetlen végrehajtás során. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| teljes_logikai_olvasások | bigint | A függvény fordítása óta végrehajtott végrehajtások által végrehajtott logikai olvasások teljes száma. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| last_logical_reads | bigint | A függvény legutóbbi végrehajtásakor végrehajtott logikai olvasások száma. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| min_logical_reads | bigint | Azoknak a logikai olvasásoknak a minimális száma, amelyeket ez a függvény valaha is végrehajtott egyetlen végrehajtás során. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| max_logical_reads | bigint | Azoknak a logikai olvasásoknak a maximális száma, amelyeket ez a függvény valaha is végrehajtott egyetlen végrehajtás során. Egy memóriaoptimalizált tábla lekérdezésekor az érték mindig 0 lesz. |
| total_elapsed_time | bigint | A függvény befejezett végrehajtásához eltelt teljes idő mikroszekundumokban. |
| utolsó_eltelt_idő | bigint | A függvény legutóbbi végrehajtásához eltelt idő mikroszekundumokban. |
| minimális_eltelt_idő | bigint | Minimális eltelt idő mikroszekundumokban a függvény befejezett végrehajtásához. |
| max_elapsed_time | bigint | Maximális eltelt idő mikroszekundumokban a függvény befejezett végrehajtásához. |
| total_page_server_reads | bigint | A függvény fordítása óta végrehajtott lapkiszolgáló olvasások teljes száma. A következőkre vonatkozik: Azure SQL Database Hyperscale. |
| utolsó_oldal_szerver_olvasások | bigint | A függvény legutóbbi végrehajtásakor végrehajtott oldalkiszolgálói olvasások száma. A következőkre vonatkozik: Azure SQL Database Hyperscale. |
| min_page_server_reads (min. oldal szerver olvasások) | bigint | Az oldalkiszolgálók minimális száma azt olvassa fel, hogy ez a függvény valaha is végrehajtott egy végrehajtás során. A következőkre vonatkozik: Azure SQL Database Hyperscale. |
| max_page_server_reads | bigint | Az egyetlen végrehajtás során valaha elért maximális oldalkiszolgálói olvasási szám, amelyet ez a függvény végrehajtott. A következőkre vonatkozik: Azure SQL Database Hyperscale. |
Permissions
Az SQL Serveren és a felügyelt SQL-példányon VIEW SERVER STATE engedély szükséges.
Az SQL Database Alapszintű, S0és S1 szolgáltatás célkitűzésein, valamint rugalmas készletekbenlévő adatbázisok esetében a kiszolgálói rendszergazdai fiókra, a Microsoft Entra rendszergazdai fiókra vagy a ##MS_ServerStateReader##kiszolgálói szerepkör tagságára van szükség. Az SQL Database szolgáltatás minden más célkitűzéséhez vagy az adatbázis VIEW DATABASE STATE engedélyére, vagy a ##MS_ServerStateReader## kiszolgálói szerepkör tagságára van szükség.
Engedélyek az SQL Server 2022-hez és újabb verziókhoz
A KISZOLGÁLÓ TELJESÍTMÉNYÁLLAPOTÁNAK MEGTEKINTÉSE engedélyre van szükség a kiszolgálón.
Példák
Az alábbi példa az átlagos eltelt idő alapján azonosított első tíz függvény adatait adja vissza.
SELECT TOP 10 d.object_id, d.database_id, OBJECT_NAME(object_id, database_id) 'function name',
d.cached_time, d.last_execution_time, d.total_elapsed_time,
d.total_elapsed_time/d.execution_count AS [avg_elapsed_time],
d.last_elapsed_time, d.execution_count
FROM sys.dm_exec_function_stats AS d
ORDER BY [total_worker_time] DESC;
Lásd még:
végrehajtással kapcsolatos dinamikus felügyeleti nézetek és függvények (Transact-SQL)
sys.dm_exec_sql_text (Transact-SQL)
sys.dm_exec_query_stats (Transact-SQL)
sys.dm_exec_trigger_stats (Transact-SQL)
sys.dm_exec_procedure_stats (Transact-SQL)