스크립트 구성 요소
스크립트 구성 요소는 매우 다양한 기능을 수행할 수 있는 개체입니다. 스크립트를 이용한 작업은 제어 흐름 영역에서 스크립트 작업도 있지만, 스크립트 구성 요소는 데이터 흐름에서 주로 사용되는 개체입니다.
SQL 2000 DTS에서의 ActiveX 스크립트 작업이 SQL 2005 SSIS의 스크립트 작업이라면, DTS의 Data Pump 작업 내의 ActiveX 스크립트 작업이 SSIS의 스크립트 구성 요소 작업이라 할 수 있습니다.
위의 그림에서 보는 바와 같이 스크립트 구성 요소는 데이터 원본도 될 수 있으며, 입력 데이터를 처리하는 변환도 되며, 변환 작업을 통해 처리된 데이터에 대한 데이터 대상도 될 수 있습니다.
스크립트 구성 요소의 기능은 매우 다양한 만큼 추후에 별도의 강좌에서 자세히 다루겠으며 본 글에서는 각 유형별 적용 가능한 영역과 따라하기를 통해 실제로 구현을 하면서 세부 사항에 대해 설명하겠습니다.
스크립트 구성 요소가 데이터 원본으로 사용될 수 있는 경우는 다음과 같습니다.
1. 입력 데이터가 단순히 플랫 파일 연결이나 OLE DB 연결 등과 같이 간단하게 설정할 수 없는 경우 – 예를 들어 테이블에 있는 원본 데이터에 대해 복잡한 쿼리를 통한 수행 결과가 원본 데이터가 될 수 있습니다. 또한 서로 다른 여러 형태의 데이터에 대해 복잡한 처리 작업을 수행한 후 산출되는 결과가 원본이 되는 경우도 있습니다. 이러한 처리 과정을 VB.net 스크립트를 이용하여 구현한 후 최종적으로 처리되는 데이터를 원본 데이터로 설정할 수 있습니다. 2. 기본적으로 제공하는 데이터 원본 유형 이외의 형태 – SQL 2005 SSIS에서는 기본적으로 ODBC 연결을 통한 데이터 원본을 지원하지 않습니다. 또한 ADSI(Active Directory Service Interface)를 사용하여 Active Directory에 접속하여 사용자 정보를 읽어 와서 원본 데이터로 이용하는 등 기본적으로 제공되는 데이터 원본 외에도 프로그래밍으로 처리 가능한 다양한 형태의 데이터 형태에 대한 접근이 가능합니다. 3. 임의의 테스트 데이터를 발생시키는 경우 – 개발 환경이나 테스트 환경에서 주로 사용되는 용도로써, 설정한 개수만큼의 원본 데이터를 임의로 생성시킬 수 있습니다. |
스크립트 구성 요소가 데이터 변환으로 사용될 수 있는 경우는 다음과 같습니다.
1. 입력 데이터에 대해 쿼리나 변환 작업으로 수행할 수 없는 복잡한 변환 작업이 필요할 때 – 예를 들어 ‘56’, ‘32’ 등과 같은 두 자리의 코드 데이터를 이용하여 상태를 판단한 후, 세부적인 상태 정보를 출력하는 작업을 수행할 수 있습니다. 또한 단순히 형 변환 작업이나 자릿수 변환 작업 등도 스크립트 변환을 이용하여 구현 가능합니다. 2. 입력 데이터 간의 복잡한 연산을 수행 – 입력되는 데이터 열을 이용하여 복잡한 산술 연산을 수행할 때 스크립트 변환을 이용할 수 있습니다. 3. 입력 데이터에 대해 열을 추가할 때 – 예를 들어 입력 데이터의 각 행에 Row Number 등과 같은 형태의 번호를 매기는 작업을 수행할 때 이용 가능합니다. 4. 입력 데이터를 이용하여 유효성을 판단 – 입력 데이터의 유효성을 판단한 후, 유효하지 않은 경우에는 처리되지 않도록 건너뛰는 작업을 수행할 수 있습니다. 예를 들어 입력되는 데이터의 값이 NULL인 경우, 해당 행의 데이터를 처리하지 않고 다음 행으로 건너뛰도록 설정합니다. |
스크립트 구성 요소가 데이터 대상으로 사용될 수 있는 경우는 다음과 같습니다.
1. 기본적으로 제공하는 데이터 대상 유형 이외의 형태 –ODBC 연결 대상과 같이 기본적으로 SQL 2005 SSIS에서 제공하지 않는 데이터 대상 유형을 구현할 수 있습니다. 2. 처리되는 데이터를 이용하여 다양한 작업을 수행 – 처리된 데이터를 입력 받은 후, 이를 이용하여 SQL 쿼리 파일을 만들거나 웹 보고서를 생성하는 등 데이터를 이용한 다양한 작업을 수행할 수 있습니다. |
이 외에도 매우 다양한 작업들을 수행할 수 있습니다
'연구개발 > DTS & SSIS' 카테고리의 다른 글
따라하기 - 스크립트 구성 요소 - 변환 (0) | 2009.06.20 |
---|---|
따라하기 - 스크립트 구성 요소 - 원본 (0) | 2009.06.20 |
기본 강좌 37 - 행 개수 변환 (0) | 2009.06.20 |
기본 강좌 36 - 유사 항목 그룹화 변환 (0) | 2009.06.20 |
기본 강좌 35 - 유사 항목 조회 변환 (0) | 2009.06.20 |