cost threshold for parallelism 서버 구성 옵션 구성

이 항목에서는 SQL Server Management Studio 또는 Transact-SQL을 사용하여 SQL Server 2012에서 병렬 처리에 대한 비용 임계값 서버 구성 옵션을 구성하는 방법에 대해 설명합니다. cost threshold for parallelism 옵션은 SQL Server가 쿼리에 대한 병렬 계획을 만들고 실행하는 임계값을 지정합니다. SQL Server는 동일한 쿼리의 직렬 계획을 실행하는 데 드는 예상 비용이 병렬 처리에 대한 비용 임계값에 설정된 값보다 높은 경우에만 해당 쿼리에 대한 병렬 계획을 만들고 실행합니다. 이 비용은 특정 하드웨어 구성에서 직렬 계획을 실행하는 데 필요한 예상 경과 시간(초)을 참조합니다. 병렬 처리에 대한 비용 임계값 옵션은 0에서 32767 사이의 모든 값으로 설정할 수 있으며 기본값은 5입니다.

항목 내용

  • 시작하기 전 주의 사항

    제한 사항

    권장 사항

    보안

  • 병렬 처리에 대한 비용 임계값 옵션을 구성하려면:

    SQL Server Management Studio

    Transact-SQL

  • 후속 작업:   병렬 처리에 대한 비용 임계값 옵션을 구성한 후

시작하기 전 주의 사항

제한 사항

  • 이 비용은 특정 하드웨어 구성에서 직렬 계획을 실행하는 데 필요한 예상 경과 시간(초)을 참조합니다. cost threshold for parallelism은 대칭적 다중 프로세서에서만 설정해야 합니다.

  • SQL Server에서는 다음 조건에서 병렬 처리에 대한 비용 임계값 값을 무시합니다.

    • 컴퓨터에 논리적 프로세서가 하나만 있습니다.

    • affinity mask 구성 옵션 때문에 SQL Server에 단일 논리적 프로세서만 사용할 수 있습니다.

    • 병렬 처리에 대한 비용 임계값 옵션이 1로 설정되어 있습니다.

논리적 프로세서는 운영 체제가 태스크를 전달하거나 스레드 컨텍스트를 실행할 수 있도록 허용하는 프로세서 하드웨어의 기본 단위입니다. 각 논리적 프로세서는 한 번에 하나만 스레드 컨텍스트를 실행할 수 있습니다. 프로세서 코어는 명령을 암호 해독하고 실행할 수 있는 기능을 제공하는 회로입니다. 프로세서 코어에는 하나 이상의 논리적 프로세서가 포함될 수 있습니다. 다음 Transact-SQL 쿼리를 사용하면 시스템의 CPU 정보를 가져올 수 있습니다.

SELECT (cpu_count / hyperthread_ratio) AS PhysicalCPUs, 
cpu_count AS logicalCPUs 
FROM sys.dm_os_sys_info

권장 사항

  • 이 옵션은 고급 옵션으로, 숙련된 데이터베이스 관리자나 공인된 SQL Server 기술 지원 담당자만 변경해야 합니다.

  • 경우에 따라 쿼리 비용 계획이 현재 병렬 처리에 대한 비용 임계값 값보다 작아도 병렬 계획을 선택할 수 있습니다. 이는 먼저 제공되는 비용 평가에 따라 병렬 계획 또는 직렬 계획을 사용할 것인지를 결정해야 전체 최적화가 완료되기 때문입니다.

보안

사용 권한

매개 변수 없이 또는 첫 번째 매개 변수만 사용하여 sp_configure를 실행할 수 있는 권한은 기본적으로 모든 사용자에게 부여됩니다. 구성 옵션을 변경하거나 RECONFIGURE 문을 실행하는 두 매개 변수를 사용하여 sp_configure를 실행하려면 사용자에게 ALTER SETTINGS 서버 수준 권한이 있어야 합니다. sysadminserveradmin 고정 서버 역할은 ALTER SETTINGS 권한을 암시적으로 보유하고 있습니다.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[Top]

SQL Server Management Studio 사용

병렬 처리에 대한 비용 임계값 옵션을 구성하려면

  1. 개체 탐색기에서 서버를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.

  2. 고급 노드를 클릭합니다.

  3. 병렬 처리에서 병렬 처리에 대한 비용 임계값 옵션을 원하는 값으로 변경합니다. 0에서 32767까지의 값을 입력 또는 선택합니다.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[Top]

Transact-SQL 사용

병렬 처리에 대한 비용 임계값 옵션을 구성하려면

  1. 데이터베이스 엔진에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다. 이 예에서는 sp_configure를 사용하여 cost threshold for parallelism 옵션 값을 10초로 설정하는 방법을 보여 줍니다.

USE AdventureWorks2012 ;
GO
EXEC sp_configure 'show advanced options', 1 ;
GO
RECONFIGURE
GO
EXEC sp_configure 'cost threshold for parallelism', 10 ;
GO
RECONFIGURE
GO

자세한 내용은 서버 구성 옵션을 참조하십시오.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[Top]

후속 작업: 병렬 처리에 대한 비용 임계값 옵션을 구성한 후

이 설정은 서버를 다시 시작하지 않아도 즉시 적용됩니다.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘[Top]

참고 항목

참조

쿼리 힌트(Transact-SQL)

ALTER WORKLOAD GROUP(Transact-SQL)

RECONFIGURE(Transact-SQL)

sp_configure(Transact-SQL)

개념

병렬 인덱스 작업 구성

affinity mask 서버 구성 옵션

서버 구성 옵션