対象者:SQL Server 2016 (13.x) およびそれ以降のバージョン
Azure SQL Database
Azure SQL Managed Instance
SQL Database in Microsoft Fabric
ノードごとの worker 可用性情報を返します。
| Name | データの種類 | 説明 |
|---|---|---|
| node_id | int | NUMA ノード ID。 |
| scheduler_count | int | このノードのスケジューラの数。 |
| max_worker_count | int | 並列クエリのワーカーの最大数。 |
| reserved_worker_count | int | 並列クエリによって予約されたワーカーの数と、すべての要求で使用されるメイン ワーカーの数。 |
| free_worker_count | int | タスクで使用できるワーカーの数。 注: すべての受信要求が少なくとも 1 つのワーカーを消費します。これは、無料のワーカー数から減算されます。 負荷の高いサーバーでは、空きワーカー数が負の数になる可能性があります。 |
| used_worker_count | int | 並列クエリで使用されるワーカーの数。 |
アクセス許可
SQL Server と SQL Managed Instance では、VIEW SERVER STATE アクセス許可が必要です。
SQL Database の Basic、S0、S1 サービス対象、および Elastic Pool のデータベースの場合、サーバー管理者アカウント、Microsoft Entra 管理者アカウント、または ##MS_ServerStateReader##サーバー ロールのメンバーシップが必要です。 他のすべての SQL Database サービス目標では、データベースに対する VIEW DATABASE STATE アクセス許可または ##MS_ServerStateReader## サーバー ロールのメンバーシップのいずれかが必要です。
SQL Server 2022 以降でのアクセス許可
サーバーに対する VIEW SERVER PERFORMANCE STATE アクセス許可が必要です。
例
A. 現在の並列ワーカーの可用性の表示
SELECT * FROM sys.dm_exec_query_parallel_workers;
参照
動的管理ビューと動的管理関数 (Transact-SQL)
実行関連の動的管理ビューと関数 (Transact-SQL)
sys.dm_os_workers(Transact-SQL)