次の方法で共有


sys.dm_os_nodes (Transact-SQL)

適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

SQLOS という内部コンポーネントは、ハードウェア プロセッサの局所性を疑似的に表現したノード構造を作成します。 これらの構造体は、 soft-NUMA を使用してカスタム ノード レイアウトを作成することで変更できます。

Note

SQL Server 2016 (13.x) 以降、SQL Server データベース エンジンは、特定のハードウェア構成にソフト NUMA を自動的に使用します。 詳細については、「 自動ソフト NUMAを参照してください。

次の表に、これらのノードに関する情報を示します。

Note

Azure Synapse Analytics または Analytics Platform System (PDW) からこの DMV を呼び出すには、 sys.dm_pdw_nodes_os_nodesという名前を使用します。 この構文は、Azure Synapse Analytics のサーバーレス SQL プールでサポートされていません。

列名 データ型 説明
node_id smallint ノードの ID。
node_state_desc nvarchar (256) ノードの状態の説明。 相互排他的な値から先に表示され、続けて、組み合わせ可能な値が表示されます。 次に例を示します。
Online、Thread Resources Low、Lazy Preemptive

相互に排他的な 4 つのnode_state_desc値があります。 以下に説明を示します。
  • ONLINE: ノードはオンラインです
  • オフライン: ノードがオフラインです
  • IDLE: ノードには保留中の作業要求がなく、アイドル状態になっています。
  • IDLE_READY: ノードには保留中の作業要求がなく、アイドル状態になる準備ができています。

3 つの組み合わせ可能なnode_state_desc値があり、その説明と共に以下に示します。
  • DAC: このノードは、 Dedicated 管理接続用に予約されています。
  • THREAD_RESOURCES_LOW: メモリ不足の状態のため、このノードに新しいスレッドを作成できません。
  • HOT ADDED: ホット追加 CPU イベントに応答してノードが追加されたことを示します。
memory_object_address varbinary(8) このノードに関連付けられているメモリ オブジェクトのアドレス。 sys.dm_os_memory_objects.memory_object_addressに対する一対一の関係。
memory_clerk_address varbinary(8) このノードに関連付けられているメモリ クラークのアドレス。 sys.dm_os_memory_clerks.memory_clerk_addressに対する一対一の関係。
io_completion_worker_address varbinary(8) このノードの IO 完了に割り当てられているワーカーのアドレス。 sys.dm_os_workers.worker_addressに対する一対一の関係。
memory_node_id smallint このノードが属するメモリ ノードの ID。 sys.dm_os_memory_nodes.memory_node_idに対する多対一の関係。
cpu_affinity_mask bigint このノードが関連付けられている CPU を識別するビットマップ。
online_scheduler_count smallint このノードによって管理されるオンライン スケジューラの数。
idle_scheduler_count smallint アクティブなワーカーの存在しないオンライン スケジューラの数。
active_worker_count int このノードによって管理されているすべてのスケジューラでアクティブになっているワーカーの数。
avg_load_balance int このノード上のスケジューラあたりの平均タスク数。
timer_task_affinity_mask bigint タイマー タスクの割り当てが可能なスケジューラを識別するビットマップ。
permanent_task_affinity_mask bigint 永続的なタスクの割り当てが可能なスケジューラを識別するビットマップ。
resource_monitor_state bit 各ノードには、1 つのリソース モニターが割り当てられます。 リソース モニターは実行中でもアイドル状態でもかまいません。 値 1 は実行中を示し、値 0 はアイドル状態を示します。
online_scheduler_mask bigint このノードのプロセス アフィニティ マスクを識別します。
processor_group smallint このノードのプロセッサ グループを識別します。
cpu_count int このノードで使用可能な CPU の数。
pdw_node_id int このディストリビューションがオンになっているノードの識別子。

適用対象: Azure Synapse Analytics、Analytics Platform System (PDW)

アクセス許可

SQL Server と SQL Managed Instance では、VIEW SERVER STATE アクセス許可が必要です。

SQL Database BasicS0、および S1 サービス目標、および弾性プール内のデータベースの場合サーバー管理者アカウント、Microsoft Entra 管理者アカウント、または##MS_ServerStateReader## サーバー ロールのメンバーシップが必要です。 他のすべての SQL Database サービス目標では、データベースに対する VIEW DATABASE STATE アクセス許可または ##MS_ServerStateReader## サーバー ロールのメンバーシップのいずれかが必要です。

SQL Server 2022 以降でのアクセス許可

サーバーに対する VIEW SERVER PERFORMANCE STATE アクセス許可が必要です。

関連項目

SQL Server オペレーティングシステム関連の動的管理ビュー (Transact-sql)
ソフト NUMA (SQL Server)