반응형
SQL Server 쿼리 처리 아키텍처_저장 프로시저 및 트리거 실행
- Version : SQL Server 2005, 2008, 2008R2, 2012
SQL Server는 저장 프로시저와 트리거의 원본만 저장한다. 저장 프로시저나 트리거가 먼저 실행 될 때 원본은 실행 계획으로 컴파일 된다. 실행 계획이 메모리에서 에이징되기 전에 저장 프로시저나 트리거가 다시 실행되는 경우 관계형 엔진은 기존 계획을 검색하고 다시 사용한다. 계획에 메모리에서 에이징되면 새 계획이 작성된다.
SQL Server에서 모든 SQL 문에 대해 수행하는 프로세스와 유사하다. 성능면에서는 동적 SQL의 일괄처리와 비교 했을 때 SQL Server에서 저장 프로시저와 트리거의 주요 이점은 SQL문이 항상 동일하다는 것이다. 따라서 관계형 엔진이 기존 실행 계획과 SQL문을 쉽게 대응 시킨다. 또한 저장 프로시저와 트리거 계획이 쉽게 재사용 된다.
저장 프로시저나 트리거의 실행 계획은 저장 프로시저를 호출하거나 트리거를 실행하는 일괄 처리의 실행 계획과는 별도로 실행 된다. 따라서 저장 프로시저와 트리거 실행 계획을 더 많이 다시 사용 할 수 있다.
[참고 자료]
http://msdn.microsoft.com/ko-kr/library/ms190201(v=sql.105).aspx
http://msdn.microsoft.com/en-us/library/aa226174%28v=sql.90%29.aspx
2013-05-08 / 강성욱 / http://sqlmvp.kr
반응형
'SQL Server > SQL Server Tip' 카테고리의 다른 글
SQL Server 쿼리 처리 아키텍처_실행 계획 캐싱 및 다시 사용 (0) | 2015.07.20 |
---|---|
DMV를 이용한 캐시된 저장 프로시저 통계 정보 확인 (0) | 2015.07.20 |
SQL Server 쿼리 처리 아키텍처 _ SQL 문 처리 (4/4) – 분산형 분할 뷰(View) 확인 (0) | 2015.07.20 |
SQL Server 쿼리 처리 아키텍처 _ SQL 문 처리 (3/4) – 뷰(View)의 인덱스 확인 (0) | 2015.07.20 |
SQL Server 쿼리 처리 아키텍처 _ SQL 문 처리 (2/4) – 뷰(View) 확인 (0) | 2015.07.20 |