Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Microsoft Fabric
Ger information om varje skräpsamlingskö på servern och olika statistik om varje. Det finns en kö per logisk CPU.
Den huvudsakliga tråden för skräpsamling (Idle-tråden) spårar uppdaterade, raderade och insatta rader för alla transaktioner som slutförts sedan den senaste anropelsen av huvudtråden för skräpsamling. När tråden för skräpsamling vaknar avgör den om tidsstämpeln för den äldsta aktiva transaktionen har ändrats. Om den äldsta aktiva transaktionen har ändrats, så köar den inaktiva tråden arbetsobjekt (i delar om 16 rader) för transaktioner vars skrivuppsättningar inte längre behövs. Till exempel, om du raderar 1 024 rader, kommer du så småningom att se 64 arbetsobjekt i garbage collection-arbeten i kö, var och en innehållande 16 raderade rader. Efter att en användartransaktion har commitat väljer den alla köade objekt i sin schemaläggare. Om det inte finns några köade objekt på dess schemaläggare kommer användartransaktionen att söka på vilken kö som helst i den aktuella NUMA-noden.
Du kan avgöra om garbage collection frigör minne för raderade rader genom att köra sys.dm_xtp_gc_queue_stats för att se om det köade arbetet bearbetas. Om poster i current_queue_depth inte bearbetas eller om inga nya arbetsobjekt läggs till i current_queue_depth, är detta en indikation på att skräpsamling inte frigör minnet. Till exempel kan skräpsamling inte göras om det finns en långvarig transaktion.
Mer information finns i In-Memory OLTP (In-Memory Optimization).
| Kolumnnamn | Typ | Description |
|---|---|---|
| queue_id | int | Den unika identifieraren för kön. |
| total_enqueues | bigint | Det totala antalet arbetsobjekt för skräpsamling som lagts i kö i denna kö sedan servern startade. |
| total_dequeues | bigint | Det totala antalet skräpsamlingsarbetsobjekt som tagits bort från denna kö sedan servern startade. |
| current_queue_depth | bigint | Det nuvarande antalet arbetsobjekt för sophämtning finns i denna kö. Denna vara kan innebära att en eller flera ska samlas in som sophämtare. |
| maximum_queue_depth | bigint | Det maximala djupet den här kön har sett. |
| last_service_ticks | bigint | CPU-ticks vid den tidpunkt då kön senast servades. |
Permissions
Kräver behörighet VIEW SERVER STATE.
Behörigheter för SQL Server 2022 och senare
Kräver BEHÖRIGHET FÖR VISNINGSSERVERNS PRESTANDATILLSTÅND på servern.
Användarscenario
Denna utdata visar att SQL Server antingen körs på 4 kärnor eller att SQL Server-instansen har affiniterats till 4 kärnor:
Denna utdata visar att det inte finns några arbetsobjekt i köerna att bearbeta. För kö 0 är det totala antalet arbetsobjekt som lagts ur kön sedan SQL-start 15625 och maxködjupet har varit 15625.
queue_id total_enqueues total_dequeues current_queue_depth maximum_queue_depth last_service_ticks
----------------------------------------------------------------------------------------------------
0 15625 15625 0 15625 1233573168347
1 15625 15625 0 15625 1234123295566
2 15625 15625 0 15625 1233569418146
3 15625 15625 0 15625 1233571605761
Se även
Memory-Optimized Tabelldynamiska hanteringsvyer (Transact-SQL)