TempDB에 대한 동시성 강화

-- MSSQL 2009. 11. 23. 19:07
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
tempdb 데이터베이스를 많이 사용하면 SQL Server에서 페이지를 할당하려고 할 때 경합이 일어날 수 있습니다.

sysprocesses 시스템 테이블 출력에서 waitresource가 "2:1:1"(PFS 페이지) 또는 "2:1:3"(SGAM 페이지)으로 표시될 수 있습니다. 경합 정도에 따라 잠시 동안 SQL Server가 응답하지 않는 것처럼 나타날 수도 있습니다.

SELECT *
FROM   master..sysprocesses

다음 작업은 tempdb를 많이 사용합니다.
  • 임시 테이블(로컬 또는 전역)을 반복해서 만들고 삭제
  • 저장 목적으로 tempdb를 사용하는 테이블 변수
  • CURSORS와 관련된 작업 테이블
  • ORDER BY 절과 관련된 작업 테이블
  • GROUP BY 절과 관련된 작업 테이블
  • HASH PLANS와 관련된 작업 파일
* JOIN을 하다보면 실행계획에서 Hash Join을 하게 되는데, 임의의 Hash Key를 생성하기 위해 TempDB를 사용한다.

이러한 활동이 상당히 많아지면 경합 문제가 발생할 수 있습니다.

출처 : http://support.microsoft.com/kb/328551/ko

'-- MSSQL' 카테고리의 다른 글

모든 Stored Procedure 내의 검색  (0) 2009.12.21
WaitFor  (0) 2009.11.26
온라인페이지 복원 테스트  (0) 2009.11.16
MSSQL2005에서 대량데이터 Delete  (0) 2009.10.28
ldf파일이 깨져 mdf만으로 db를 복구할 때  (0) 2009.10.19
posted by 어린왕자악꿍