텍스트 파일을 테이블로 로딩하는 단순한 기능부터 여러 기능들을 단계적으로 추가하는 방식으로 간단한 실습 강의를 준비하였습니다. 시간 날 때 그냥 구상하고, 데이터나 테이블, 기능들 또한 어줍잖게 생각한 것들이라 견고함이 조금 떨어질 지 모르겠지만, 패키지 하나를 처음부터 끝까지 살펴본다는 점으로 생각해 주시면 감사하겠습니다.
계획한 강좌는 다음과 같이 총 10강이며, 예제로 쓸 데이터는 샘플 웹 로그 데이터이고, 필요에 따라 중간 중간에 조건들을 추가하여 구성하도록 할 예정입니다.
[강좌 목록 및 요약]
1. 텍스트 데이터 파일을 테이블로 로딩하기
- 단순히 텍스트 파일을 테이블로 적재하는 패키지를 구현합니다. 앞으로 전개할 예제 강의 내용의 가장 기본이 되는 작업이라 할 수 있습니다.
2. 테이블 생성 작업 추가
- 1강에서는 대상 테이블이 존재한다라는 가정으로 시작하였는데, 대상 테이블이 있는지 확인하고 없는 경우에는 생성시켜주는 작업을 추가합니다.
3. 파일 존재 확인 작업 추가
- 2강과 마찬가지로 데이터 처리 작업의 선행 단계 작업입니다. 읽어올 파일이 존재하는지 여부를 확인하고, 읽어올 파일이 있는 경우에만 데이터 처리를 시작하는 기능을 구현합니다.
4. 데이터 로딩 시 필터링 구현 : 조건부 변환, 정렬, 파생 열 변환
- 텍스트 파일에서 데이터를 읽어온 후, 테이블에 적재하기 전에 몇 가지 변환 작업을 구현합니다. 예를 들어 읽어온 텍스트의 특정 열의 값을 판단하여 입력 여부를 결정하거나, 열 데이터를 정해진 규칙에 맞게 변경하는 작업 등을 구현합니다.
5. 멀티캐스트를 이용하여 복수 대상으로 적재
- 텍스트 파일에서 읽어온 데이터를 여러 대상으로 동일하게 또는 조건에 따라 다르게 여러 대상으로 적재하는 기능을 구현합니다.
6. 여러 파일에 대한 처리
- 읽어올 파일이 하나가 아니라 여러 개인 경우에 대한 처리 방법을 구현합니다. 이 방법은 잘 알려진 Foreach 루프 컨테이너를 이용하는 방법 외에 조금 덜 알려진 방법인 다중 플랫 파일 연결을 이용하는 방법으로 설명합니다.
A. Foreach 루프 컨테이너를 이용한 처리
B. 다중 플랫 파일 연결을 이용한 처리
7. 대상 테이블 동적 설정 : 날짜 별 대상 테이블 생성 및 적재
- 이제 조금 현실적인 패키지로 발전합니다. 단순히 일회성 작업이 아니라 매일 매일 수행되는 작업인 경우에 대한 처리 작업을 구현합니다. 예를 들어,
8. 커스터마이징 작업 로그 설정 : 패키지, 작업 개체 별 시작 및 종료 및 처리 행 수 관리
- 만들어 놓은 패키지가 잘 돌아가는지 모니터링 하고 관리하는 작업 역시 개발만큼이나 중요한 작업 형태입니다. 기본적으로 SSIS에서는 다양한 로깅 기능이 제공되지만 이벤트 처리기를 이용해서 필요한 로깅 정보를 생성하는 기능을 구현합니다.
9. 작업 종료 및 실패 시 메일 통보 설정 : 이벤트 처리기 및 SMTP 메일 발송을 이용
- 매일 수행되는 작업이 정상적으로 종료되거나 실패로 처리가 될 경우, 관리자에게 메일로 통보하도록 설정하는 기능이나 자동 처리 프로세스를 이용하여 처리하도록 하는 기능을 구현합니다.
10. SQL Agent 등록 및 모니터링
- 만들어진 패키지를 자동으로 수행하도록 SQL Agent에 등록하고 관리하는 방법에 대해 설명합니다.
'연구개발 > DTS & SSIS' 카테고리의 다른 글
실습 강좌 2 - 테이블 생성 작업 추가 (0) | 2009.06.20 |
---|---|
실습 강좌 1 - 텍스트 데이터 파일을 테이블로 로딩하기 (0) | 2009.06.20 |
기본 강좌 50 - SSIS 기타 사항 (기본 강좌 끝) (0) | 2009.06.20 |
기본 강좌 49 - 배포 및 배포 마법사 (0) | 2009.06.20 |
기본 강좌 48 - 보안 (0) | 2009.06.20 |