Compartir a través de


sys.dm_db_xtp_gc_cycle_stats (Transact-SQL)

Genera el estado actual de las transacciones confirmadas que han eliminado una o varias filas. El subproceso principal de recolección de elementos no utilizados se reactiva cada minuto o cuando el número de transacciones DML confirmadas supera un umbral interno desde el último ciclo de recolección de elementos no utilizados. Como parte del ciclo de recolección de elementos no utilizados, mueve las transacciones que se han confirmado a una o varias colas asociadas con las generaciones. Las transacciones que han generado versiones obsoletas se agrupan en una unidad de 16 transacciones en 16 generaciones de la manera siguiente:

  • Generación 0: almacena todas las transacciones que se confirmaron antes que la transacción activa más antigua. Las versiones de fila generadas por estas transacciones están disponibles inmediatamente para la recolección de elementos no utilizados.

  • Generaciones 1 a 14: almacena las transacciones cuya marca de tiempo es mayor que la transacción activa más antigua. No se pueden recolectar las versiones de fila no utilizadas. Cada generación puede contener hasta 16 transacciones. En estas generaciones pueden existir un total de 224 (14 * 16) transacciones.

  • Generación 15: las transacciones restantes cuya marca de tiempo es mayor que la transacción activa más antigua van a la generación 15. Al igual que ocurre con la generación 0, no hay ningún límite en cuanto al número de transacciones de la generación 15.

Cuando hay presión de memoria, el subproceso de recolección de elementos no utilizados actualiza la sugerencia de la transacción activa más antigua de forma absoluta, lo que fuerza la recolección de elementos no utilizados.

Para obtener más información, vea OLTP en memoria (optimización en memoria).

Se aplica a: SQL Server (desde SQL Server 2014 hasta la versión actual).

Nombre de la columna

Tipo

Descripción

cycle_id

bigint

Identificador único del ciclo de recolección de elementos no utilizados.

ticks_at_cycle_start

bigint

Tics en el momento en el que se inició el ciclo.

ticks_at_cycle_end

bigint

Tics en el momento en el que finalizó el ciclo.

base_generation

bigint

El valor de generación base actual de la base de datos. Representa la marca de tiempo de la transacción activa más antigua usada para identificar transacciones para la recolección de elementos no utilizados. El identificador de la transacción activa más antigua se actualiza en incrementos de 16. Por ejemplo, si tiene los identificadores de transacción 124, 125, 126 … 139, el valor será 124. Cuando agregue otra transacción, por ejemplo 140, el valor será 140.

xacts_copied_to_local

bigint

El número de transacciones copiadas de la canalización de transacciones en la matriz de generación de la base de datos.

xacts_in_gen_0- xacts_in_gen_15

bigint

Número de transacciones de cada generación.

Permisos

Necesita el permiso VIEW DATABASE STATE en el servidor.

Escenario de uso

A continuación se muestra un resultado de ejemplo con un subconjunto de columnas, donde se muestran 27 generaciones:

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

Vea también

Conceptos

Vistas de administración dinámica de tablas con optimización para memoria (Transact-SQL)