sys.dm_db_xtp_gc_cycle_stats (T-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Menghasilkan status transaksi yang diterapkan saat ini yang menghapus satu atau beberapa baris. Utas pengumpulan sampah menganggur bangun setiap menit atau ketika jumlah transaksi DML yang diterapkan melebihi ambang batas internal sejak siklus pengumpulan sampah terakhir. Sebagai bagian dari siklus pengumpulan sampah, transaksi yang diterapkan berpindah ke satu atau beberapa antrean yang terkait dengan generasi. Transaksi yang menghasilkan versi basi dikelompokkan dalam satuan 16 transaksi di 16 generasi sebagai berikut:

  • Generasi-0: Ini menyimpan semua transaksi yang dilakukan lebih awal dari transaksi aktif tertua. Versi baris yang dihasilkan oleh transaksi ini segera tersedia untuk pengumpulan sampah.

  • Generasi 1-14: Menyimpan transaksi dengan tanda waktu lebih besar dari transaksi aktif tertua. Versi baris tidak dapat dikumpulkan sampah. Setiap generasi dapat menyimpan hingga 16 transaksi. Total 224 (14 * 16) transaksi dapat ada pada generasi ini.

  • Generasi 15: Sisa transaksi dengan tanda waktu lebih besar dari transaksi aktif tertua hingga generasi 15. Mirip dengan generasi-0, tidak ada batasan jumlah transaksi dalam generasi-15.

Ketika ada tekanan memori, utas pengumpulan sampah memperbarui petunjuk transaksi aktif tertua secara agresif, yang memaksa pengumpulan sampah.

Untuk informasi selengkapnya, lihat OLTP Dalam Memori (Pengoptimalan Dalam Memori).

Nama kolom Tipe Deskripsi
cycle_id bigint Pengidentifikasi unik untuk siklus pengumpulan sampah.
ticks_at_cycle_start bigint Centang pada saat siklus dimulai.
ticks_at_cycle_end bigint Kutu pada saat siklus berakhir.
base_generation bigint Nilai pembuatan dasar saat ini dalam database. Ini mewakili tanda waktu transaksi aktif tertua yang digunakan untuk mengidentifikasi transaksi pengumpulan sampah. ID transaksi aktif terlama diperbarui dalam kenaikan 16. Misalnya, jika Anda memiliki ID transaksi sebagai 124, 125, 126 ... 139, nilainya adalah 124. Saat Anda menambahkan transaksi lain, misalnya 140, nilainya adalah 140.
xacts_copied_to_local bigint Jumlah transaksi yang disalin dari alur transaksi ke dalam array pembuatan database.
xacts_in_gen_0 - xacts_in_gen_15 bigint Jumlah transaksi di setiap generasi.

Izin

Memerlukan izin TAMPILKAN STATUS DATABASE pada database.

Izin untuk SQL Server 2022 dan yang lebih baru

Memerlukan izin TAMPILKAN STATUS PERFORMA DATABASE pada database.

Skenario Penggunaan

Berikut adalah sampel output dengan subset kolom, memperlihatkan 27 generasi:

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