Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform Systeem (PDW)
SQL-database in Microsoft Fabric
Geeft geaggregeerde prestatiestatistieken terug voor gecachte opgeslagen procedures. De weergave geeft één rij terug voor elk gecachte opgeslagen procedureplan, en de levensduur van de rij is zo lang als de opgeslagen procedure gecachet blijft. Wanneer een opgeslagen procedure uit de cache wordt verwijderd, wordt de overeenkomstige rij uit deze weergave verwijderd. Op dat moment wordt het query_cache_removal_statistics evenement opgevoerd vergelijkbaar met sys.dm_exec_query_stats voor SQL Server en Azure SQL Managed Instance.
In Azure SQL Database kunnen dynamische beheerweergaven geen informatie weergeven die van invloed is op databaseinsluiting of informatie weergeven over andere databases waartoe de gebruiker toegang heeft. Om te voorkomen dat deze informatie zichtbaar wordt gemaakt, wordt elke rij met gegevens die geen deel uitmaken van de verbonden tenant uitgefilterd.
Opmerking
De resultaten van sys.dm_exec_procedure_stats kunnen per uitvoering variëren, omdat de data alleen voltooide queries weerspiegelt en niet die nog in uitvoering zijn.
Gebruik de naam sys.dm_pdw_nodes_exec_procedure_statsom dit aan te roepen vanuit Azure Synapse Analytics of Analytics Platform System (PDW). Deze syntaxis wordt niet ondersteund door een serverloze SQL-pool in Azure Synapse Analytics.
| Kolomnaam | Gegevenstype | Description |
|---|---|---|
| database_id | int | Database-ID waarin de opgeslagen procedure zich bevindt. In Azure SQL Database zijn de waarden uniek binnen één database of een elastische pool, maar niet binnen een logische server. |
| object_id | int | Objectidentificatienummer van de opgeslagen procedure. |
| type | char(2) | Type van het object: P = SQL stored procedure PC = Assembly (CLR) opgeslagen procedure X = Uitgebreide opgeslagen procedure |
| type_desc | nvarchar(60) | Beschrijving van het objecttype: SQL_STORED_PROCEDURE CLR_STORED_PROCEDURE EXTENDED_STORED_PROCEDURE |
| sql_handle | varbinary(64) | Dit kan worden gebruikt om te correleren met zoekopdrachten in sys.dm_exec_query_stats die binnen deze opgeslagen procedure zijn uitgevoerd. |
| plan_handle | varbinary(64) | Identificator voor het in-memory plan. Deze id is tijdelijk en blijft alleen constant terwijl het plan in de cache blijft. Deze waarde kan worden gebruikt met de sys.dm_exec_cached_plans dynamische beheerweergave. Zal altijd 0x000 wanneer een native gecompileerde opgeslagen procedure een geheugengeoptimaliseerde tabel bevraagt. |
| gecachede_tijd | datetime | Tijd waarop de opgeslagen procedure aan de cache werd toegevoegd. |
| laatste_uitvoertijd | datetime | De laatste keer dat de opgeslagen procedure werd uitgevoerd. |
| execution_count | bigint | Het aantal keren dat de opgeslagen procedure is uitgevoerd sinds de laatste compilatie. |
| total_worker_time | bigint | De totale hoeveelheid CPU-tijd, in microseconden, die is verbruikt door uitvoeringen van deze opgeslagen procedure sinds deze werd gecompileerd. Voor native gecompileerde opgeslagen procedures is total_worker_time mogelijk niet accuraat als veel uitvoeringen minder dan 1 milliseconde duren. |
| laatste_werknemerstijd | bigint | CPU-tijd, in microseconden, die werd verbruikt bij de laatste uitvoering van de opgeslagen procedure. 1 |
| min_worker_time | bigint | De minimale CPU-tijd, in microseconden, die deze opgeslagen procedure ooit heeft verbruikt tijdens een enkele uitvoering. 1 |
| max_worker_time | bigint | De maximale CPU-tijd, in microseconden, die deze opgeslagen procedure ooit heeft verbruikt tijdens een enkele uitvoering. 1 |
| total_physical_reads | bigint | Het totale aantal fysieke lezingen dat door uitvoeringen van deze opgeslagen procedure is uitgevoerd sinds deze is gecompileerd. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| last_physical_reads | bigint | Het aantal fysieke reads dat de laatste keer dat de opgeslagen procedure werd uitgevoerd, uitgevoerd. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| min_physical_reads | bigint | Het minimum aantal fysieke lezingen dat deze opgeslagen procedure ooit heeft uitgevoerd tijdens een enkele uitvoering. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| max_physical_reads | bigint | Het maximale aantal fysieke lezingen dat deze opgeslagen procedure ooit tijdens één uitvoering heeft uitgevoerd. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| total_logical_writes | bigint | Het totale aantal logische schrijfopdrachten dat is uitgevoerd door uitvoeringen van deze opgeslagen procedure sinds deze is gecompileerd. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| laatste_logische_schrijvingen | bigint | Het aantal bufferpoolpagina's dat de vorige keer dat het plan werd uitgevoerd, werd vervuild. Als een pagina al vuil (gewijzigd) is, worden er geen schrijfbewerkingen geteld. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| min_logical_writes | bigint | Het minimum aantal logische schrijfacties dat deze opgeslagen procedure ooit heeft uitgevoerd tijdens een enkele uitvoering. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| max_logical_writes | bigint | Het maximale aantal logische schrijfacties dat deze opgeslagen procedure ooit tijdens één uitvoering heeft uitgevoerd. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| total_logical_reads | bigint | Het totale aantal logische reads dat is uitgevoerd door uitvoeringen van deze opgeslagen procedure sinds deze werd gecompileerd. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| last_logical_reads | bigint | Het aantal logische lezingen dat voor het laatst werd uitgevoerd toen de opgeslagen procedure werd uitgevoerd. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| min_logical_reads | bigint | Het minimum aantal logische lezingen dat deze opgeslagen procedure ooit heeft uitgevoerd tijdens een enkele uitvoering. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| max_logical_reads | bigint | Het maximale aantal logische lezingen dat deze opgeslagen procedure ooit heeft uitgevoerd tijdens een enkele uitvoering. Zal altijd 0 query's uitvoeren op een tabel die is geoptimaliseerd voor geheugen. |
| total_elapsed_time | bigint | De totale verstreken tijd, in microseconden, voor voltooide uitvoeringen van deze opgeslagen procedure. |
| laatste_verstreken_tijd | bigint | De verstreken tijd, in microseconden, voor de meest recent voltooide uitvoering van deze opgeslagen procedure. |
| min_elapsed_time | bigint | De minimale verstreken tijd, in microseconden, voor elke voltooide uitvoering van deze opgeslagen procedure. |
| max_verstreken_tijd | bigint | De maximale verstreken tijd, in microseconden, voor elke voltooide uitvoering van deze opgeslagen procedure. |
| total_spills | bigint | Het totale aantal pagina's dat is gelekt door de uitvoering van deze opgeslagen procedure sinds deze is gecompileerd. Van toepassing op: Vanaf SQL Server 2017 (14.x) CU3 |
| last_spills | bigint | Het aantal pagina's dat de laatste keer dat de opgeslagen procedure werd uitgevoerd, is gelekt. Van toepassing op: Vanaf SQL Server 2017 (14.x) CU3 |
| min_spills | bigint | Het minimale aantal pagina's dat deze opgeslagen procedure ooit heeft verloren tijdens een enkele uitvoering. Van toepassing op: Vanaf SQL Server 2017 (14.x) CU3 |
| max_spills | bigint | Het maximale aantal pagina's dat deze opgeslagen procedure ooit heeft verloren tijdens een enkele uitvoering. Van toepassing op: Vanaf SQL Server 2017 (14.x) CU3 |
| pdw_node_id | int | De id voor het knooppunt waarop deze distributie zich bevindt. Van toepassing op: Azure Synapse Analytics, Analytics Platform System (PDW) |
| total_page_server_reads | bigint | Het totale aantal paginaserver-lezingen uitgevoerd door uitvoeringen van deze opgeslagen procedure sinds deze is gecompileerd. Van toepassing op: Azure SQL Database Hyperscale |
| last_page_server_reads | bigint | Het aantal pagina-serverlezingen dat voor het laatst werd uitgevoerd toen de opgeslagen procedure werd uitgevoerd. Van toepassing op: Azure SQL Database Hyperscale |
| min_page_server_reads | bigint | Het minimale aantal paginaserver-reads dat deze opgeslagen procedure ooit heeft uitgevoerd tijdens een enkele uitvoering. Van toepassing op: Azure SQL Database Hyperscale |
| max_page_server_reads | bigint | Het maximale aantal paginaserver-reads dat deze opgeslagen procedure ooit heeft uitgevoerd tijdens een enkele uitvoering. Van toepassing op: Azure SQL Database Hyperscale |
1 Voor native gecompileerde opgeslagen procedures wordt de werktijd, wanneer statistiekverzameling is ingeschakeld, in milliseconden verzameld. Als de query in minder dan een milliseconde wordt uitgevoerd, zal de waarde 0 zijn.
Permissions
Voor SQL Server en SQL Managed Instance is een machtiging vereist VIEW SERVER STATE .
Voor servicedoelstellingen van SQL Database Basic, S0 en S1 en voor databases in elastische pools is het serverbeheerdersaccount , het Microsoft Entra-beheerdersaccount of het lidmaatschap van de ##MS_ServerStateReader##serverrol vereist. Voor alle andere SQL Database-servicedoelstellingen is de VIEW DATABASE STATE machtiging voor de database of het lidmaatschap van de ##MS_ServerStateReader## serverfunctie vereist.
Machtigingen voor SQL Server 2022 en hoger
Vereist de machtiging PRESTATIESTATUS VAN DE WEERGAVESERVER op de server.
Opmerkingen
Statistieken in de weergave worden bijgewerkt wanneer de uitvoering van een opgeslagen procedure is voltooid.
Voorbeelden
Het volgende voorbeeld geeft informatie over de tien belangrijkste opgeslagen procedures die zijn geïdentificeerd door de gemiddelde verstreken tijd.
SELECT TOP 10 d.object_id, d.database_id, OBJECT_NAME(object_id, database_id) 'proc 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_procedure_stats AS d
ORDER BY [total_worker_time] DESC;
Zie ook
uitvoeringsgerelateerde dynamische beheerweergaven en -functies (Transact-SQL)
sys.dm_exec_sql_text (Transact-SQL)
sys.dm_exec_query_plan (Transact-SQL)
sys.dm_exec_query_stats (Transact-SQL)
sys.dm_exec_trigger_stats (Transact-SQL)
sys.dm_exec_cached_plans (Transact-SQL)