sys.dm_os_memory_nodes(Transact-SQL)
SQL Server 내부의 할당은 SQL Server 메모리 관리자를 사용합니다. sys.dm_os_process_memory의 프로세스 메모리 카운터와 내부 카운터 간의 차이를 추적하면 SQL Server 메모리 공간에서 외부 구성 요소의 메모리 사용을 확인할 수 있습니다.
노드는 물리적 NUMA 메모리 노드별로 생성됩니다. 이는 sys.dm_os_nodes의 CPU 노드와 다를 수 있습니다.
Windows 메모리 할당 루틴을 통한 직접적인 할당은 추적되지 않습니다. 다음 표에는 SQL Server 메모리 관리자 인터페이스를 통해서만 이루어진 메모리 할당에 대한 정보가 나와 있습니다.
적용 대상: SQL Server(SQL Server 2008 - 현재 버전). |
열 이름 |
데이터 형식 |
설명 |
|
---|---|---|---|
memory_node_id |
smallint |
메모리 노드의 ID를 지정합니다. sys.dm_os_memory_clerks의 memory_node_id와 관련되어 있습니다. Null을 허용하지 않습니다. |
|
virtual_address_space_reserved_kb |
bigint |
물리적 페이지에 커밋 또는 매핑되지 않은 가상 주소 예약의 크기(KB)를 나타냅니다. Null을 허용하지 않습니다. |
|
virtual_address_space_committed_kb |
bigint |
물리적 페이지에 커밋 또는 매핑된 가상 주소 크기(KB)를 지정합니다. Null을 허용하지 않습니다. |
|
locked_page_allocations_kb |
bigint |
SQL Server에 의해 잠긴 물리적 메모리 크기(KB)를 지정합니다. Null을 허용하지 않습니다. |
|
single_pages_kb |
bigint |
이 노드에서 실행 중인 스레드별로 단일 페이지 할당자를 사용하여 할당된 커밋된 메모리 크기(KB)입니다. 이 메모리는 버퍼 풀에서 할당됩니다. 이 값은 할당 요청이 충족된 물리적 위치가 아닌 할당 요청이 발생한 지점의 노드를 나타냅니다.
|
|
pages_kb |
bigint |
Memory Manager 페이지 할당자에 의해 이 NUMA 노드에서 할당되는 커밋된 메모리 크기(KB)를 지정합니다. Null을 허용하지 않습니다.
|
|
multi_pages_kb |
bigint |
이 노드에서 실행 중인 스레드별로 다중 페이지 할당자를 사용하여 할당된 커밋된 메모리의 크기(KB)입니다. 이 메모리는 버퍼 풀 외부에 있습니다. 이 값은 할당 요청이 충족된 물리적 위치가 아닌 할당 요청이 발생한 지점의 노드를 나타냅니다.
|
|
shared_memory_reserved_kb |
bigint |
이 노드에서 예약된 공유 메모리 크기(KB)를 지정합니다. Null을 허용하지 않습니다. |
|
shared_memory_committed_kb |
bigint |
이 노드에서 커밋된 공유 메모리 크기(KB)를 지정합니다. Null을 허용하지 않습니다. |
|
cpu_affinity_mask |
bigint |
내부적으로만 사용됩니다. Null을 허용하지 않습니다.
|
|
online_scheduler_mask |
bigint |
내부적으로만 사용됩니다. Null을 허용하지 않습니다.
|
|
processor_group |
smallint |
내부적으로만 사용됩니다. Null을 허용하지 않습니다.
|
|
foreign_committed_kb |
bigint |
다른 메모리 노드에서 커밋된 메모리 크기(KB)를 지정합니다. Null을 허용하지 않습니다.
|
사용 권한
서버에 대한 VIEW SERVER STATE 권한이 필요합니다.