sys.dm_db_xtp_checkpoint_stats (Transact-SQL)
適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance
現在のデータベースのインメモリ OLTP チェックポイント操作に関する統計を返します。 データベースにインメモリ OLTP オブジェクトがない場合、 sys.dm_db_xtp_checkpoint_stats
は空の結果セットを返します。
詳細については、「 インメモリ OLTP (インメモリ最適化)」を参照してください。
USE [In_Memory_db_name]
SELECT * FROM sys.dm_db_xtp_checkpoint_stats;
SQL Server 2014 (12.x) は、より新しいバージョンとは大きく異なり、個別に説明します。
次の表では、SQL Server 2016 (13.x) 以降のバージョンの sys.dm_db_xtp_checkpoint_stats
の列について説明します。
列名 | 種類 | 説明 |
---|---|---|
last_lsn_processed |
bigint | コントローラーによって表示される最後の LSN。 |
end_of_log_lsn |
numeric(38) | ログの末尾の LSN。 |
bytes_to_end_of_log |
bigint | コントローラーによって処理されていないログ バイト 。 last_lsn_processed と end_of_log_lsn の間のバイト数に対応します。 |
log_consumption_rate |
bigint | コントローラーによるトランザクション ログの消費量の割合 (KB/秒)。 |
active_scan_time_in_ms |
bigint | トランザクション ログをアクティブにスキャンする際にコントローラーが費やした時間。 |
total_wait_time_in_ms |
bigint | ログをスキャンしないコントローラーの累積待機時間。 |
waits_for_io |
bigint | コントローラー スレッドによって発生したログ IO の待機回数。 |
io_wait_time_in_ms |
bigint | コントローラー スレッドによるログ IO の待機に費やされた累積時間。 |
waits_for_new_log_count |
bigint | コントローラー スレッドが新しいログを生成するために発生した待機の数。 |
new_log_wait_time_in_ms |
bigint | コントローラー スレッドによる新しいログの待機に費やされた累積時間。 |
idle_attempts_count |
bigint | コントローラーがアイドル状態に遷移した回数。 |
tx_segments_dispatched |
bigint | コントローラーによって表示され、シリアライザーにディスパッチされたセグメントの数。 セグメントは、シリアル化の単位を形成するログの連続した部分です。 現在、サイズは 1 MB ですが、今後変更される可能性があります。 |
segment_bytes_dispatched |
bigint | データベースの再起動後に、コントローラーによってシリアライザーにディスパッチされたバイトの合計バイト数。 |
bytes_serialized |
bigint | データベースの再起動後にシリアル化されたバイトの合計数。 |
serializer_user_time_in_ms |
bigint | シリアライザーがユーザー モードで費やした時間。 |
serializer_kernel_time_in_ms |
bigint | シリアライザーがカーネル モードで費やした時間。 |
xtp_log_bytes_consumed |
bigint | データベースの再起動後に使用されたログ バイトの合計数。 |
checkpoints_closed |
bigint | データベースの再起動後に閉じられたチェックポイントの数。 |
last_closed_checkpoint_ts |
bigint | 最後に閉じられたチェックポイントのタイムスタンプ。 |
hardened_recovery_lsn |
numeric(38) | この LSN から復旧が開始されます。 |
hardened_root_file_guid |
uniqueidentifier | 最後に完了したチェックポイントの結果として強化されたルート ファイルの GUID。 |
hardened_root_file_watermark |
bigint | 内部のみ。 ルート ファイルを読み取る有効な範囲を指定します (これは、内部的に関連する型のみ -BSN と呼ばれます)。 |
hardened_truncation_lsn |
numeric(38) | 切り捨てポイントの LSN。 |
log_bytes_since_last_close |
bigint | ログの最後から現在の末尾までのバイト数。 |
time_since_last_close_in_ms |
bigint | チェックポイントの最後のクローズからの時間。 |
current_checkpoint_id |
bigint | 現在、このチェックポイントには新しいセグメントが割り当てられます。 チェックポイント システムはパイプラインです。 現在のチェックポイントは、ログからのセグメントが割り当てられているチェックポイントです。 制限に達すると、コントローラーはチェックポイントを解放し、新しいチェックポイントを現在のチェックポイントとして作成します。 |
current_checkpoint_segment_count |
bigint | 現在のチェックポイント内のセグメントの数。 |
recovery_lsn_candidate |
bigint | 内部のみ。 current_checkpoint_id が閉じると、回復として選択される候補。 |
outstanding_checkpoint_count |
bigint | 閉じるのを待機しているパイプライン内のチェックポイントの数。 |
closing_checkpoint_id |
bigint | 終了チェックポイントの ID。 シリアライザーは並列で動作するため、完了すると、チェックポイントは閉じるスレッドで終了する候補になります。 ただし、閉じるスレッドは一度に 1 つだけ閉じることができ、順序を指定する必要があるため、終了チェックポイントは閉じるスレッドが処理しているチェックポイントです。 |
recovery_checkpoint_id |
bigint | 回復に使用するチェックポイントの ID。 |
recovery_checkpoint_ts |
bigint | 復旧チェックポイントのタイム スタンプ。 |
bootstrap_recovery_lsn |
numeric(38) | ブートストラップの回復 LSN。 |
bootstrap_root_file_guid |
uniqueidentifier | ブートストラップのルート ファイルの GUID。 |
internal_error_code |
bigint | いずれかのコントローラー、シリアライザー、閉じる、およびマージ スレッドで発生するエラー。 |
bytes_of_large_data_serialized |
bigint | シリアル化されたデータの量を指定します。 |
db_in_checkpoint_only_mode |
bit | True の 場合、データベースがメモリ内 OLTP チェックポイント専用モードです。 適用対象: SQL Server 2022 (16.x) 以降のバージョン。 |
アクセス許可
SQL Server 2019 (15.x) 以前のバージョンでは、データベースに対する VIEW DATABASE STATE
アクセス許可が必要です。
SQL Server 2022 (16.x) 以降のバージョンでは、データベースに対する VIEW DATABASE PERFORMANCE STATE
アクセス許可が必要です。