Udostępnij za pomocą


sys.dm_db_xtp_gc_cycle_stats (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Na wynik jest aktualny stan zadeklarowanych transakcji, które usunęły jeden lub więcej wierszy. Wątek bezczynnego zbierania śmieci budzi się co minutę lub gdy liczba zadeklarowanych transakcji DML przekracza wewnętrzny próg od ostatniego cyklu zbierania śmieci. W ramach cyklu garbage collection zobowiązane transakcje trafiają do jednej lub więcej kolejek powiązanych z pokoleniami. Transakcje, które wygenerowały przestarzałe wersje, są grupowane w jednostkę 16 transakcji na 16 pokoleń w następujący sposób:

  • Generacja 0: Przechowuje wszystkie transakcje, które zostały zatwierdzone wcześniej niż najstarsza aktywna transakcja. Wersje wierszy generowane przez te transakcje są natychmiast dostępne do garbage collection.

  • Generacje 1-14: Przechowuje transakcje z datkiem czasu większym niż najstarsza aktywna transakcja. Wersje wierszowe nie mogą być odrzucane przez garbage collect. Każda generacja może pomieścić do 16 transakcji. W tych pokoleniach może istnieć łącznie 224 (14 * 16) transakcji.

  • Generacja 15: Pozostałe transakcje z znacznikiem czasowym większym niż najstarsza aktywna transakcja trafiają do generacji 15. Podobnie jak w generacji 0, w generacji 15 nie ma ograniczenia liczby transakcji.

Gdy pojawia się presja pamięci, wątek garbage collection agresywnie aktualizuje najstarszą aktywną wskazówkę dotyczącą transakcji, co wymusza garbage collection.

Aby uzyskać więcej informacji, zobacz In-Memory OLTP (In-Memory Optimization).

Nazwa kolumny Typ Description
cycle_id bigint Unikalny identyfikator dla cyklu zbierania śmieci.
ticks_at_cycle_start bigint Tykałem w momencie, gdy cykl się zaczął.
ticks_at_cycle_end bigint Tykałem w momencie, gdy cykl się kończył.
base_generation bigint Aktualna wartość generowania bazy w bazie danych. Reprezentuje to znacznik czasu najstarszej aktywnej transakcji używanej do identyfikacji transakcji w ramach garbage collection. Najstarszy aktywny identyfikator transakcji jest aktualizowany w odstępie 16. Na przykład, jeśli masz identyfikatory transakcji jako 124, 125, 126 ... 139, wartość to 124. Gdy dodajesz kolejną transakcję, na przykład 140, wartość wynosi 140.
xacts_copied_to_local bigint Liczba transakcji skopiowanych z potoku transakcyjnego do tablicy generującej bazy danych.
xacts_in_gen_0 - xacts_in_gen_15 bigint Liczba transakcji w każdej generacji.

Permissions

Wymaga uprawnienia WYŚWIETL STAN BAZY DANYCH w bazie danych.

Uprawnienia dla programu SQL Server 2022 i nowszych

Wymaga uprawnienia WYŚWIETL STAN WYDAJNOŚCI BAZY DANYCH dla bazy danych.

Scenariusz użycia

Oto próbka wyników z podzbiorem kolumn, pokazująca 27 pokoleń:

cycle_id   ticks_at_cycle_start ticks_at_cycle_end   base_generation  xacts_in_gen_0    xacts_in_gen_1  
  
1          123160509            123160509            1                    0                    0  
2          123176822            123176822            1                    0                    1  
3          123236826            123236826            1                    0                    1  
4          123296829            123296829            1                    0                    1  
5          123356832            123356941            129                  0                    0  
6          123357473            123357473            129                  0                    0  
7          123417486            123417486            129                  0                    0  
8          123477489            123477489            129                  0                    0  
9          123537492            123537492            129                  0                    0  
10         123597500            123597500            129                  0                    0  
11         123657504            123657504            129                  0                    0  
12         123717507            123717507            129                  0                    0  
13         123777510            123777510            129                  0                    0  
14         123837513            123837513            129                  0                    0  
15         123897516            123897516            129                  0                    0  
16         123957516            123957516            129                  0                    0  
17         124017516            124017516            129                  0                    0  
18         124077517            124077517            129                  0                    0  
19         124137517            124137517            129                  0                    0  
20         124197518            124197518            129                  0                    0  
21         124257518            124257518            129                  0                    0  
22         124317523            124317523            129                  0                    0  
23         124377526            124377526            129                  0                    0  
24         124437529            124437529            129                  0                    0  
25         124497533            124497533            129                  0                    0  
26         124557536            124557536            129                  0                    0  
27         124617539            124617539            129                  0                    0