sys.dm_os_memory_brokers(Transact-SQL)

SQL Server 내부의 할당은 SQL Server 메모리 관리자를 사용합니다. sys.dm_os_process_memory의 프로세스 메모리 카운터와 내부 카운터 간의 차이를 추적하면 SQL Server 메모리 공간에서 외부 구성 요소의 메모리 사용을 확인할 수 있습니다.

메모리 Broker는 현재 및 예상 사용량에 따라 SQL Server 내의 다양한 구성 요소 사이에 메모리 할당을 적절하게 분산합니다 메모리 Broker는 할당을 수행하지 않고, 분산을 계산하기 위해 할당을 추적만합니다.

다음 표에서는 메모리 Broker에 대한 정보를 제공합니다.

열 이름

데이터 형식

설명

pool_id

int

리소스 관리자 풀과 연관된 경우 리소스 풀의 ID입니다.

memory_broker_type

nvarchar(60)

메모리 Broker의 유형입니다. 현재 SQL Server에는 다음과 같은 세 가지 유형의 메모리 Broker가 있습니다.

설명

MEMORYBROKER_FOR_CACHE

캐시된 개체에서 사용하도록 할당된 메모리입니다.

MEMORYBROKER_FOR_STEAL

버퍼 풀에서 빼앗긴 메모리입니다. 현재 소유자가 이 메모리를 해제하기 전까지 이 메모리는 다른 구성 요소에서 다시 사용할 수 없습니다.

MEMORYBROKER_FOR_RESERVE

현재 실행되고 있는 요청에서 나중에 사용하도록 예약된 메모리입니다.

allocations_kb

bigint

이 유형의 Broker에 할당된 메모리 양(KB)입니다.

allocations_kb_per_sec

bigint

초당 메모리 할당 비율(KB)입니다. 메모리 할당 취소의 경우 이 값은 음수가 될 수 있습니다.

predicted_allocations_kb

bigint

Broker에서 할당된 메모리의 예상 양입니다. 이 값은 메모리 양 패턴에 기반합니다.

target_allocations_kb

bigint

현재 설정 및 메모리 사용량 패턴에 따라 제안되는 할당된 메모리 양(KB)입니다. 이 Broker는 이 수만큼 증가하거나 축소해야 합니다.

future_allocations_kb

bigint

다음 몇 초 동안 완료되는 예상 할당 수(LB)입니다.

overall_limit_kb

bigint

Broker가 할당할 수 있는 최대 메모리 양(KB)입니다.

last_notification

nvarchar(60)

현재 설정 및 사용량 패턴에 따라 권장되는 메모리 사용량입니다. 유효한 값은 다음과 같습니다.

  • 증가

  • 축소

  • 안정

사용 권한

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

참고 항목

참조

동적 관리 뷰 및 함수(Transact-SQL)

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