다음을 통해 공유


sys.dm_os_nodes (Transact-SQL)

적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW)

SQLOS라는 내부 구성 요소는 하드웨어 프로세서 지역성을 모방하는 노드 구조를 만듭니다. 이러한 구조는 soft-NUMA를 사용하여 사용자 지정 노드 레이아웃을 만들어 변경할 수 있습니다.

참고 항목

SQL Server 2016(13.x)부터 SQL Server 데이터베이스 엔진 특정 하드웨어 구성에 소프트 NUMA를 자동으로 사용합니다. 자세한 내용은 자동 Soft-NUMA를 참조하세요.

다음 표에서는 이러한 노드에 대한 정보를 제공합니다.

참고 항목

Azure Synapse Analytics 또는 PDW(Analytics Platform System)에서 이 DMV를 호출하려면 이름 sys.dm_pdw_nodes_os_nodes 사용합니다. 이 구문은 Azure Synapse Analytics의 서버리스 SQL 풀에서 지원되지 않습니다.

열 이름 데이터 형식 설명
node_id smallint 노드의 ID입니다.
node_state_desc nvarchar(256) 노드 상태에 대한 설명입니다. 함께 사용할 수 없는 값이 먼저 표시되고 함께 사용할 수 있는 값이 그 다음에 표시됩니다. 예시:
온라인, 스레드 리소스 낮음, 지연 선점

4개의 상호 배타적 node_state_desc 값이 있습니다. 설명과 함께 아래에 나열되어 있습니다.
  • 온라인: 노드가 온라인 상태입니다.
  • 오프라인: 노드가 오프라인 상태입니다.
  • IDLE: 노드에 보류 중인 작업 요청이 없으며 유휴 상태로 전환되었습니다.
  • IDLE_READY: 노드에 보류 중인 작업 요청이 없으며 유휴 상태로 전환할 준비가 되었습니다.

아래에 설명과 함께 세 가지 결합 가능한 node_state_desc 값이 나열되어 있습니다.
  • DAC: 이 노드는 전용 관리 연결을 위해 예약되어 있습니다.
  • THREAD_RESOURCES_LOW: 메모리 부족 조건으로 인해 이 노드에 새 스레드를 만들 수 없습니다.
  • 핫 추가: 핫 추가 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이면 실행 중이고 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 Basic, S0S1 서비스 목표 또는 탄력적 풀 내의 데이터베이스에 대해서는 서버 관리자 계정, Microsoft Entra 관리자 계정 또는 ##MS_ServerStateReader## 서버 역할의 멤버 자격이 필요합니다. 다른 모든 SQL Database 서비스 목표에 대해서는 데이터베이스에 대한 VIEW DATABASE STATE 권한 또는 ##MS_ServerStateReader## 서버 역할의 멤버 자격이 필요합니다.

SQL Server 2022 이상에 대한 사용 권한

서버에 대한 VIEW SERVER PERFORMANCE STATE 권한이 필요합니다.

참고 항목

SQL Server 운영 체제 관련 동적 관리 뷰(Transact-SQL)
soft-NUMA(SQL Server)