max degree of parallelism 서버 구성 옵션 구성Configure the max degree of parallelism Server Configuration Option

이 항목 적용 대상: 예SQL Server없습니다Azure SQL 데이터베이스없습니다Azure SQL 데이터 웨어하우스 없습니다 병렬 데이터 웨어하우스THIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

이 항목에서는 또는 을 사용하여 SQL Server 2017SQL Server 2017 에서 SQL Server Management StudioSQL Server Management Studio MAXDOP(max degree of parallelism) Transact-SQLTransact-SQL서버 구성 옵션을 구성하는 방법에 대해 설명합니다.This topic describes how to configure the max degree of parallelism (MAXDOP) server configuration option in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. SQL ServerSQL Server 인스턴스는 마이크로프로세서나 CPU가 둘 이상인 컴퓨터에서 실행될 경우 최적 병렬 처리 수준, 즉 각 병렬 계획 실행에 대해 단일 문을 실행하는 데 사용된 프로세서 수를 검색합니다.When an instance of SQL ServerSQL Server runs on a computer that has more than one microprocessor or CPU, it detects the best degree of parallelism, that is, the number of processors employed to run a single statement, for each parallel plan execution. max degree of parallelism 옵션을 사용하여 병렬 계획 실행에 사용할 프로세서 수를 제한할 수 있습니다.You can use the max degree of parallelism option to limit the number of processors to use in parallel plan execution. SQL ServerSQL Server 는 쿼리에 대한 병렬 실행 계획, 인덱스 DDL(데이터 정의 언어) 작업, 병렬 삽입, 온라인 열 변경, 병렬 통계 수집 및 정적 커서와 키 집합 커서 채우기를 고려합니다. considers parallel execution plans for queries, index data definition language (DDL) operations, parallel insert, online alter column, parallel stats collectiuon, and static and keyset-driven cursor population.

시작하기 전에Before You Begin

제한 사항Limitations and Restrictions

  • affinity mask 옵션을 기본값으로 설정하지 않으면 SMP(대칭적 다중 처리) 시스템에서 SQL ServerSQL Server 에 사용 가능한 프로세서 수가 제한될 수도 있습니다.If the affinity mask option is not set to the default, it may restrict the number of processors available to SQL ServerSQL Server on symmetric multiprocessing (SMP) systems.

권장 사항Recommendations

  • 이 옵션은 고급 옵션으로, 숙련된 데이터베이스 관리자나 공인된 SQL ServerSQL Server 기술 지원 담당자만 변경해야 합니다.This option is an advanced option and should be changed only by an experienced database administrator or certified SQL ServerSQL Server technician.

  • 서버에서 최대 병렬 처리 수준을 결정할 수 있도록 하려면 이 옵션을 기본값인 0으로 설정합니다.To enable the server to determine the maximum degree of parallelism, set this option to 0, the default value. 최대 병렬 처리 수준을 0으로 설정하면 SQL ServerSQL Server 에서는 최대 64개의 프로세서까지 모두 사용할 수 있습니다.Setting maximum degree of parallelism to 0 allows SQL ServerSQL Server to use all the available processors up to 64 processors. 병렬 계획이 생성되지 않게 하려면 max degree of parallelism 을 1로 설정합니다.To suppress parallel plan generation, set max degree of parallelism to 1. 단일 쿼리 실행에서 사용할 수 있는 프로세서 코어의 최대 개수를 지정하려면 값을 1부터 32,767까지의 값 중 하나를 설정합니다.Set the value to a number from 1 to 32,767 to specify the maximum number of processor cores that can be used by a single query execution. 사용 가능한 프로세서 수보다 더 큰 수를 지정하면 사용 가능한 실제 프로세서 수가 사용됩니다.If a value greater than the number of available processors is specified, the actual number of available processors is used. 컴퓨터에 프로세서가 하나밖에 없으면 max degree of parallelism 값이 무시됩니다.If the computer has only one processor, the max degree of parallelism value is ignored.

  • 쿼리 문에 MAXDOP 쿼리 힌트를 지정하면 쿼리의 max degree of parallelism 값을 재정의할 수 있습니다.You can override the max degree of parallelism value in queries by specifying the MAXDOP query hint in the query statement. 자세한 내용은 쿼리 힌트(Transact-SQL)를 참조하세요.For more information, see Query Hints (Transact-SQL).

  • 인덱스를 만들거나 다시 작성하는 인덱스 작업 또는 클러스터형 인덱스를 삭제하는 인덱스 작업은 리소스가 많이 소모됩니다.Index operations that create or rebuild an index, or that drop a clustered index, can be resource intensive. 인덱스 문에 MAXDOP 인덱스 옵션을 지정하면 인덱스 작업의 max degree of parallelism 값을 재정의할 수 있습니다.You can override the max degree of parallelism value for index operations by specifying the MAXDOP index option in the index statement. MAXDOP 값은 실행 시 문에 적용되며 인덱스 메타데이터에 저장되지 않습니다.The MAXDOP value is applied to the statement at execution time and is not stored in the index metadata. 자세한 내용은 병렬 인덱스 작업 구성을 참조하세요.For more information, see Configure Parallel Index Operations.

  • 쿼리 및 인덱스 작업과 함께 이 옵션은 DBCC CHECKTABLE, DBCC CHECKDB 및 DBCC CHECKFILEGROUP의 병렬 처리도 제어합니다.In addition to queries and index operations, this option also controls the parallelism of DBCC CHECKTABLE, DBCC CHECKDB, and DBCC CHECKFILEGROUP. 추적 플래그 2528을 사용하여 이러한 문의 병렬 실행 계획을 비활성화할 수 있습니다.You can disable parallel execution plans for these statements by using trace flag 2528. 자세한 내용은 추적 플래그(Transact-SQL)를 참조하세요.For more information, see Trace Flags (Transact-SQL).

지침Guidelines

max degree of parallelism 서버 구성 값을 구성하는 경우 다음 지침을 사용하세요.Use the following guidelines when you configure the max degree of parallelism server configuration value:

단일 NUMA 노드가 있는 서버Server with single NUMA node 논리 프로세서 8개 미만Less than 8 logical processors MAXDOP을 #개 이하 논리 프로세서로 유지Keep MAXDOP at or below # of logical processors
단일 NUMA 노드가 있는 서버Server with single NUMA node 논리 프로세서 8개 초과Greater than 8 logical processors MAXDOP을 8개로 유지Keep MAXDOP at 8
여러 NUMA 노드가 있는 서버Server with multiple NUMA nodes NUMA 노드당 논리 프로세서 8개 미만Less than 8 logical processors per NUMA node MAXDOP을 NUMA 노드당 #개 이하 논리 프로세서로 유지Keep MAXDOP at or below # of logical processors per NUMA node
여러 NUMA 노드가 있는 서버Server with multiple NUMA nodes NUMA 노드당 논리 프로세서 8개 초과Greater than 8 logical processors per NUMA node MAXDOP을 8개로 유지Keep MAXDOP at 8

보안Security

사용 권한Permissions

매개 변수 없이 또는 첫 번째 매개 변수만 사용하여 sp_configure 를 실행할 수 있는 권한은 기본적으로 모든 사용자에게 부여됩니다.Execute permissions on sp_configure with no parameters or with only the first parameter are granted to all users by default. 구성 옵션을 변경하거나 RECONFIGURE 문을 실행하는 두 매개 변수를 사용하여 sp_configure 를 실행하려면 사용자에게 ALTER SETTINGS 서버 수준 권한이 있어야 합니다.To execute sp_configure with both parameters to change a configuration option or to run the RECONFIGURE statement, a user must be granted the ALTER SETTINGS server-level permission. sysadminserveradmin 고정 서버 역할은 ALTER SETTINGS 권한을 암시적으로 보유하고 있습니다.The ALTER SETTINGS permission is implicitly held by the sysadmin and serveradmin fixed server roles.

SQL Server Management Studio 사용Using SQL Server Management Studio

최대 병렬 처리 수준 옵션을 구성하려면To configure the max degree of parallelism option

  1. 개체 탐색기에서 서버를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.In Object Explorer, right-click a server and select Properties.

  2. 고급 노드를 클릭합니다.Click the Advanced node.

  3. 최대 병렬 처리 수준 상자에서 병렬 계획 실행에 사용할 프로세서의 최대 개수를 선택합니다.In the Max Degree of Parallelism box, select the maximum number of processors to use in parallel plan execution.

Transact-SQL 사용Using Transact-SQL

최대 병렬 처리 수준 옵션을 구성하려면To configure the max degree of parallelism option

  1. 데이터베이스 엔진Database Engine에 연결합니다.Connect to the 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.From the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute. 이 예제에서는 sp_configure 를 사용하여 max degree of parallelism 옵션을 8으로 구성하는 방법을 보여 줍니다.This example shows how to use sp_configure to configure the max degree of parallelism option to 8.

USE AdventureWorks2012 ;  
GO   
EXEC sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE WITH OVERRIDE;  
GO  
EXEC sp_configure 'max degree of parallelism', 8;  
GO  
RECONFIGURE WITH OVERRIDE;  
GO  

자세한 내용은 서버 구성 옵션(SQL Server)서버 구성 옵션을 구성하는 방법에 대해 설명합니다.For more information, see Server Configuration Options (SQL Server).

후속 작업: 최대 병렬 처리 수준 옵션을 구성한 후Follow Up: After you configure the max degree of parallelism option

이 설정은 서버를 다시 시작하지 않아도 즉시 적용됩니다.The setting takes effect immediately without restarting the server.

참고 항목See Also

affinity mask 서버 구성 옵션 affinity mask Server Configuration Option
RECONFIGURE(Transact-SQL) RECONFIGURE (Transact-SQL)
서버 구성 옵션(SQL Server) sp_configure(Transact-SQL) Server Configuration Options (SQL Server) sp_configure (Transact-SQL)
CREATE INDEX(Transact-SQL) CREATE INDEX (Transact-SQL)
ALTER INDEX(Transact-SQL) ALTER INDEX (Transact-SQL)
ALTER TABLE(Transact-SQL) ALTER TABLE (Transact-SQL)
DBCC CHECKTABLE(Transact-SQL) DBCC CHECKTABLE (Transact-SQL)
DBCC CHECKDB(Transact-SQL) DBCC CHECKDB (Transact-SQL)
DBCC CHECKFILEGROUP(Transact-SQL) DBCC CHECKFILEGROUP (Transact-SQL)
병렬 인덱스 작업 구성 Configure Parallel Index Operations
쿼리 힌트(Transact-SQL) 인덱스 옵션 설정Query Hints (Transact-SQL) Set Index Options
SQL Server의 "max degree of parallelism" 구성 옵션에 대한 권장 사항 및 지침(영문)Recommendations and guidelines for the "max degree of parallelism" configuration option in SQL Server