데이터베이스 개발자 Tip & 강좌

SQLER의 개발자들이 만들어가는 데이터베이스 사용자 Tip & 강좌 게시판입니다. SQL서버, Oracle, MySQL 등 여러 클라우드/오픈소스 기반 데이터베이스 개발 및 운영 관련 팁과 쿼리 노하우를 이곳에서 가장 먼저 접하실 수 있습니다. 많은 도움 되시길 바랍니다.

MAXDOP 설정

jevida(강성욱) 2016.09.13 06:55 Views : 1701

MAXDOP 설정

 

  • Version : SQL Server 2005, 2008, 2008R2, 2012

 

MAXDOP 은 하나 이상의 프로세서 또는 CPU가 있는 컴퓨터에서 각 쿼리에 대한 단일 문을 실행하는데 병렬 실행 계획에 사용할 수 있는 프로세서 수 이다.

 

그렇다면 MAXDOP은 어디에서 사용할까? 정답은 없다. 환경에 따라 다르며 시스템의 특성에 따라 다르다.

 

MAXDOP의 기본값은 0 (모든 프로세서 사용)이며 다음의 설정을 통하여 MAXDOP 값을 변경 할 수 있다.

 

Sp_configure 명령어는 현재의 값을 확인 할 수 있다. (기본값 0)

 

 

Sp_configure 명령어를 통하여 병렬처리에 사용되는 프로세서 수를 제한 하자. 변경 후 즉시 적용 되므로 SQL 서비스를 재시작 하지 않아도 된다.

실습에서는 MAXDOP의 값을 2로 수정 하였다.

SP_CONFIGURE 'MAX DEGREE OF PARALLELISM', 2

GO

 

RECONFIGURE WITH OVERRIDE

GO

 

SP_CONFIGURE

GO

 

 

 

서버 속성에서는 [고급] - [최대 병렬 처리 수준]의 값을 수정하여 확인을 하면 된다.

 

MAXDOP 쿼리 힌트

병렬로 처리되는 해당 쿼리문에 힌트를 추가 하여 사용한다. 이 힌트를 사용하면 sp_configure 및 리소스 관리자의 최대 병렬 처리 수준 구성 옵션을 무시한다. MAXDOP 힌트는 sp_configure로 구성한 값을 초과할 수 있다.

 

[MAXDOP 값 설명]

설명

0

서버가 시스템 작업에 따라 사용되는 CPU의 수를 결정.

1

직렬로 수행.

2- ??

지정된 값으로 프로세서 수를 제한. 작업에 따라 지정된 수보다 적은 프로세서 사용될 수도 있음. 사용 가능한 CPU 수보다 더 큰 수를 지정하면 사용 가능한 실제 CPU 수가 사용 됨.

 

  • 병렬처리 최대 값은 SQL Server 버전, CPU 종류 및 운영체제에 따라 달라진다.
  • Affinity mask 옵션을 기본값으로 설정하지 않으면 SMP(대칭적 다중 처리) 시스템에서 SQL Server에 사용 가능한 프로세서 수가 제한 될 수도 있다.

 

참고 링크 : http://msdn.microsoft.com/ko-kr/library/ms181007(v=sql.100).aspx



강성욱 / jevida@naver.com

Microsoft SQL Server MVP

Blog : http://sqlmvp.kr

Facebook : http://facebook.com/sqlmvp

No. Subject Author Date Views
1710 SQL Server 특정 세션에 대한 마지막 실행 문장 확인 jevida(강성욱) 2016.09.13 713
1709 DMV - 데이터베이스 버퍼 메모리 사용량 확인 jevida(강성욱) 2016.09.13 2906
1708 Sys.dm_fts_parser을 이용한 문자열 구문 분석 jevida(강성욱) 2016.09.13 1277
1707 DMV에서 SQL Server 리소스 데이터베이스 값 jevida(강성욱) 2016.09.13 1061
1706 키워드로 PROCEDURE, FUNCTION 찾기 jevida(강성욱) 2016.09.13 1541
1705 BCP 사용 jevida(강성욱) 2016.09.13 3279
1704 DATEADD를 사용한 날짜 추가 및 빼기 jevida(강성욱) 2016.09.13 1153
1703 Change Data Capture(CDC) – 변경 이력 추적 jevida(강성욱) 2016.09.13 2372
1702 SSMS 에서 디버깅 하기 jevida(강성욱) 2016.09.13 6304
1701 CLR 등록 및 활성화 하기 jevida(강성욱) 2016.09.13 1536
1700 SQL Server 확장 이벤트를 사용한 Tempdb 병목현상 추적 jevida(강성욱) 2016.09.13 1602
» MAXDOP 설정 jevida(강성욱) 2016.09.13 1701
1698 SQL Server 이름 변경 하기 jevida(강성욱) 2016.09.13 1570
1697 SQL Server 마지막 시작 시간 확인 하기 jevida(강성욱) 2016.09.13 702
1696 여러 포트를 사용하도록 SQL Server 구성 jevida(강성욱) 2016.09.13 1768
1695 SQL Server가 사용중인 TCP/IP 포트 확인 jevida(강성욱) 2016.09.13 10634
1694 SQL Server SP_Congifure 변경 사항 캡처 jevida(강성욱) 2016.09.13 2061
1693 SQL Server Net Libraries jevida(강성욱) 2016.09.13 1103
1692 SQL Server 별칭 설정 및 사용 jevida(강성욱) 2016.09.13 2561
1691 SQL Server에 연결된 어플리케이션 드라이버 버전 확인 jevida(강성욱) 2016.09.13 864





XE Login