Partilhar via


sys.dm_db_xtp_checkpoint_stats (Transact-SQL)

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada SQL do Azure

Devolve estatísticas sobre as In-Memory operações de checkpoint OLTP na base de dados atual. Se a base de dados não tiver In-Memory objetos OLTP, sys.dm_db_xtp_checkpoint_stats devolve um conjunto de resultados vazio.

Para obter mais informações, consulte In-Memory OLTP (In-Memory Optimization).

USE [In_Memory_db_name]
SELECT * FROM sys.dm_db_xtp_checkpoint_stats;

O SQL Server 2014 (12.x) é substancialmente diferente das versões mais recentes e é discutido separadamente.

A tabela seguinte descreve as colunas em sys.dm_db_xtp_checkpoint_stats, para o SQL Server 2016 (13.x) e versões posteriores.

Nome da coluna Tipo Description
last_lsn_processed bigint Último LSN visto pelo controlador.
end_of_log_lsn numérico(38) O LSN do final do tronco.
bytes_to_end_of_log bigint Bytes logarítmicos não processados pelo controlador, correspondentes aos bytes entre last_lsn_processed e end_of_log_lsn.
log_consumption_rate bigint Taxa de consumo de registo de transações pelo controlador (em KB/seg).
active_scan_time_in_ms bigint Tempo gasto pelo controlador a analisar ativamente o registo de transações.
total_wait_time_in_ms bigint Tempo de espera acumulado para o controlador sem escanear o log.
waits_for_io bigint Número de esperas por IO de registo incorridas pelo thread do controlador.
io_wait_time_in_ms bigint Tempo acumulado gasto à espera do log IO pelo thread do controlador.
waits_for_new_log_count bigint Número de esperas incorridas pelo thread controlador para gerar um novo log.
new_log_wait_time_in_ms bigint Tempo acumulado gasto à espera de um novo log pelo thread controlador.
idle_attempts_count bigint Várias vezes o controlador passou para um estado inativo.
tx_segments_dispatched bigint Número de segmentos vistos pelo controlador e enviados para os serializadores. Segmento é uma porção contígua de log que forma uma unidade de serialização. Atualmente, tem um tamanho de 1 MB, mas pode mudar no futuro.
segment_bytes_dispatched bigint Contagem total de bytes despachados pelo controlador para serializadores, desde o reinício da base de dados.
bytes_serialized bigint Contagem total de bytes serializados desde o reinício da base de dados.
serializer_user_time_in_ms bigint Tempo gasto pelos serializadores em modo utilizador.
serializer_kernel_time_in_ms bigint Tempo gasto pelos serializadores em modo kernel.
xtp_log_bytes_consumed bigint Contagem total de bytes de log consumidos desde o reinício da base de dados.
checkpoints_closed bigint Número de pontos de controlo fechados desde o reinício da base de dados.
last_closed_checkpoint_ts bigint Carimbo temporal do último posto de controlo fechado.
hardened_recovery_lsn numérico(38) A recuperação começa com este LSN.
hardened_root_file_guid uniqueidentifier GUID do ficheiro raiz que endureceu como resultado do último checkpoint concluído.
hardened_root_file_watermark bigint Só interno. Especifica até onde é válido ler o ficheiro raiz (este é um tipo apenas internamente relevante - chamado BSN).
hardened_truncation_lsn numérico(38) LSN do ponto de truncamento.
log_bytes_since_last_close bigint Bytes do último perto do final atual do log.
time_since_last_close_in_ms bigint Tempo desde o último fecho do posto de controlo.
current_checkpoint_id bigint Atualmente, novos segmentos estão a ser atribuídos a este posto de controlo. O sistema de checkpoints é um pipeline. O ponto de controlo atual é aquele a que os segmentos do registo estão a ser atribuídos. Quando atinge um limite, o controlador liberta o checkpoint, e um novo é criado como atual.
current_checkpoint_segment_count bigint Contagem de segmentos no posto de controlo atual.
recovery_lsn_candidate bigint Só internamente. Candidato a ser escolhido como recoverylsn quando current_checkpoint_id fechar.
outstanding_checkpoint_count bigint Número de pontos de controlo no pipeline à espera de serem fechados.
closing_checkpoint_id bigint ID do posto de controlo que se aproxima.

Os serializadores trabalham em paralelo, por isso, uma vez terminados, o checkpoint é candidato a fechar por thread fechado. Mas o fio fechado só pode fechar um de cada vez e tem de estar em ordem, por isso o checkpoint de fecho é aquele em que o fio fechado está a trabalhar.
recovery_checkpoint_id bigint ID do posto de controlo a ser usado na recuperação.
recovery_checkpoint_ts bigint Carimbo temporal do ponto de controlo de recuperação.
bootstrap_recovery_lsn numérico(38) LSN de recuperação para o bootstrap.
bootstrap_root_file_guid uniqueidentifier GUID do ficheiro raiz do bootstrap.
internal_error_code bigint Erro detetado por qualquer um dos threads controlador, serializador, fechar e merge.
bytes_of_large_data_serialized bigint Especifica a quantidade de dados que foi serializada.
db_in_checkpoint_only_mode bit É verdade se a base de dados estiver em modo OLTP apenas em memória.

Aplica-se a: SQL Server 2022 (16.x) e versões posteriores.

Permissions

O SQL Server 2019 (15.x) e versões anteriores requerem VIEW DATABASE STATE permissão para a base de dados.

SQL Server 2022 (16.x) e versões posteriores requerem VIEW DATABASE PERFORMANCE STATE permissão para a base de dados.