sys.dm_exec_background_job_queue_stats (Transact-SQL)
適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)
非同期 (バックグラウンド) 実行のために送信された各クエリ プロセッサ ジョブの集計統計を提供する行を返します。
Note
これを Azure Synapse Analytics または Analytics Platform System (PDW) から呼び出すには、sys.dm_pdw_nodes_exec_background_job_queue_statsという名前を使用します。 この構文は、Azure Synapse Analytics のサーバーレス SQL プールでサポートされていません。
列名 | データ型 | 説明 |
---|---|---|
queue_max_len | int | キューの最大長。 |
enqueued_count | int | キューに正常に送信された要求の数。 |
started_count | int | 実行を開始した要求の数。 |
ended_count | int | 成功または失敗のどちらかに処理された要求の数。 |
failed_lock_count | int | ロックの競合またはデッドロックが原因で失敗した要求の数。 |
failed_other_count | int | その他の理由で失敗した要求の数。 |
failed_giveup_count | int | 再試行の制限に達したために失敗した要求の数。 |
enqueue_failed_full_count | int | キューがいっぱいであるために失敗したエンキュー試行の数。 |
enqueue_failed_duplicate_count | int | 重複するエンキュー試行回数。 |
elapsed_avg_ms | int | 要求の平均経過時間 (ミリ秒)。 |
elapsed_max_ms | int | 最も長い要求の経過時間 (ミリ秒)。 |
pdw_node_id | int | 適用対象: Azure Synapse Analytics、Analytics Platform System (PDW) このディストリビューションがオンになっているノードの識別子。 |
解説
このビューは、非同期更新統計ジョブについてのみ情報を返します。 非同期更新統計の詳細については、「統計」を参照してください。
アクセス許可
SQL Server と SQL Managed Instance では、VIEW SERVER STATE
アクセス許可が必要です。
SQL Database Basic、S0、S1 サービス目標、およびエラスティック プール内のデータベースの場合、サーバー管理者アカウント、Microsoft Entra 管理者アカウント、またはサーバー ロールの##MS_ServerStateReader##
メンバーシップが必要です。 他のすべての SQL Database サービス目標では、データベースに対する VIEW DATABASE STATE
アクセス許可または ##MS_ServerStateReader##
サーバー ロールのメンバーシップのいずれかが必要です。
SQL Server 2022 以降でのアクセス許可
サーバーに対する VIEW SERVER PERFORMANCE STATE アクセス許可が必要です。
例
A. 失敗したバックグラウンド ジョブの割合を確認する
次の例では、実行されたすべてのクエリに対する失敗したバックグラウンド ジョブの割合を返します。
SELECT
CASE ended_count WHEN 0
THEN 'No jobs ended'
ELSE CAST((failed_lock_count + failed_giveup_count + failed_other_count) / CAST(ended_count AS float) * 100 AS varchar(20))
END AS [Percent Failed]
FROM sys.dm_exec_background_job_queue_stats;
GO
B. エンキュー試行の失敗率の決定
次の例では、実行されたすべてのクエリに対して失敗したエンキュー試行の割合を返します。
SELECT
CASE enqueued_count WHEN 0
THEN 'No jobs posted'
ELSE CAST((enqueue_failed_full_count + enqueue_failed_duplicate_count) / CAST(enqueued_count + enqueue_failed_full_count + enqueue_failed_duplicate_count AS float) * 100 AS varchar(20))
END AS [Percent Enqueue Failed]
FROM sys.dm_exec_background_job_queue_stats;
GO
参照
動的管理ビューと動的管理関数 (Transact-SQL)
実行関連の動的管理ビューと関数 (Transact-SQL)
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示