따라하기 - 검사점 사용하기
검사점 기능을 이용하여 패키지 운영 중 에러가 발생했을 때의 처리 상황에 대한 예를 구현해 봅니다.
1. 빈 패키지 파일을 하나 추가한 후, 연결 관리자에서 OLE DB 연결을 하나 추가합니다. 이 때, 서버 및 DB는 임의로 지정합니다.
2. 도구 상자에서 네 개의 SQL 실행 작업을 추가한 후, 이름을 “SQL 실행 작업 1”, … , “SQL 실행 작업 4” 로 변경한 후, 각각의 SQL 실행 작업 편집기에서 다음과 같이 설정합니다.
Connection - <1에서 추가한 OLE DB 연결>
SQLStatement – SELECT 1/10
3. 네 개의 작업들을 차례대로 연결합니다.
4. 네 개의 작업들을 모두 선택한 후, 속성에서 FailPackageOnFailure 의 값을 True로 설정합니다. 각 작업들을 선택해서 하나씩 변경해도 되지만, 작업의 수가 많은 경우, 이와 같이 일괄적으로 변경할 수도 있습니다.
5. 제어 흐름 영역의 빈 곳을 클릭한 후, 속성 창에서 다음과 같이 설정합니다.
CheckpointFileName - D:\CheckPoint.chk
CheckpointUsage - IFExists
SaveCheckpoints - True
6. [테스트 시나리오 1] 정상인 경우
패키지를 수행한 후, 정상적으로 수행되는 지를 확인합니다.
7. [테스트 시나리오 2] 임의 에러 발생
SQL 실행 작업 3의 SQLStatement를 다음과 같이 변경한 후, 패키지를 실행합니다.
SQLStatement – SELECT 1/0
SQL 실행 작업 3에서 작업이 실패가 되었으며, D:\CheckPoint.chk 라는 이름의 Checkpoint 파일이 생성되었습니다.
8. [테스트 시나리오 2’] 에러 발생 후, 재 수행
에러가 난 부분을 수정하지 않고 패키지를 다시 수행합니다.
SQL 실행 작업 3에서 작업이 실패나 난 후, 이 정보가 CheckPoint.chk 파일에 저장이 되어 있으며, 이전 작업들은 처리되었기 때문에 다시 수행하더라도 SQL 실행 작업 1 및 SQL 실행 작업 2는 다시 실행되지 않고 SQL 실행 작업 3부터 실행됩니다.
9. [테스트 시나리오 3] 에러 수정 후, 재 수행
SQL 실행 작업 3의 SQLStatement를 다시 SELECT 1/10 으로 수정한 후, 패키지를 실행합니다.
작업이 실패했었던 SQL 실행 작업 3부터 정상적으로 나머지 작업들이 수행됩니다. 패키지가 정상적으로 수행되면 자동으로 Checkpoint 파일은 삭제됩니다. 이제 다시 패키지를 수행하면 정상적으로 SQL 실행 작업 1부터 수행됩니다.
'연구개발 > DTS & SSIS' 카테고리의 다른 글
기본 강좌 44 - 데이터 흐름 경로 (0) | 2009.06.20 |
---|---|
기본 강좌 43 - 선행 제약 조건 (0) | 2009.06.20 |
기본 강좌 42 - 검사점 (0) | 2009.06.20 |
기본 강좌 41 - 구성 (0) | 2009.06.20 |
기본 강좌 40 - 식 (0) | 2009.06.20 |