sys.dm_os_nodes (Transact-SQL)
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW)
一个名为 SQLOS 的内部组件可创建模拟硬件处理器位置的节点结构。 可以使用 软 NUMA 创建自定义节点布局来更改这些结构。
注意
从 SQL Server 2016(13.x)开始,SQL Server 数据库引擎将自动对某些硬件配置使用软 NUMA。 有关详细信息,请参阅 自动软 NUMA。
下表提供了有关这些节点的信息。
注意
若要从 Azure Synapse Analytics 或 Analytics 平台系统(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 有四个互斥node_state_desc值。 下面列出了它们的说明。
下面列出了三个可组合node_state_desc值及其说明。
|
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 表示正在运行,值 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 托管实例,需要 VIEW SERVER STATE
权限。
在 SQL 数据库“基本”、“S0”和“S1”服务目标中,对于“弹性池”中的数据库,服务器管理员帐户、Microsoft Entra 管理员帐户或 ##MS_ServerStateReader##
服务器角色中的成员身份为必填项。 对于所有其他 SQL 数据库服务目标,需要数据库的 VIEW DATABASE STATE
权限或 ##MS_ServerStateReader##
服务器角色中的成员身份。
SQL Server 2022 及更高版本的权限
要求对服务器具有 VIEW SERVER PERFORMANCE STATE 权限。
另请参阅
与 SQL Server 操作系统相关的动态管理视图 (Transact-SQL)
软件 NUMA (SQL Server)