SQL Server/SQL Server Tip

SQL Server 쿼리 처리 아키텍처_저장 프로시저 및 트리거 실행

SungWookKang 2015. 7. 20. 12:07
반응형

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

 

반응형