SQL Server/SSIS 강좌

용어 조회 – 참조 데이터를 이용하여 빈도를 확인하자

SungWookKang 2015. 7. 16. 10:01
반응형

용어 조회 – 참조 데이터를 이용하여 빈도를 확인하자

안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://blog.naver.com/jevida)

이번 시간에는 [용어 조회]에 대해서 알아 보도록 하겠습니다.

[용어 조회 변환]은 입력 데이터에서 미리 정의된 참조 데이터의 용어가 얼마나 나타나는지를 조회하는 작업 입니다.

이 변환 역시 [용어 추출]과 유사하게 영문 데이터에 대해서만 정상적으로 수행되며 입력 데이터는 유니코드 문자형(DT_WSTR), 유니코드 텍스트(DT_NTEXT)만 지원 됩니다.

관련 링크

http://blog.naver.com/jevida/140159227758

 

[BIDS]를 실행하여 [Integration Services 프로젝트]를 생성합니다.

 

[제어 흐름]탭에서 [데이터 흐름 태스트]를 드래그 앤 드롭으로 추가 합니다.

[용어 조회]이름을 지정하여 태스크를 생성 합니다.

 

[데이터 흐름]탭에서 그림과 같이 [원본 데이터(OLE DB 대상)]와 [대상 데이터(OLE DB 대상)]을 끌어다 놓습니다. 그리고 그 사이 [용어 조회] 작업을 추가하여 데이터 흐름선을 연결 합니다.

 

[원본 데이터]에서 마우스 오른쪽을 클릭하여 [편집]을 선택 합니다.

 

그림과 같이 편집 창이 나타나면 [OLE DB 연결 관리자]에서 원본 DB의 연결 관리자를 선택하고 해당 테이블을 선택하여 [미리 보기]를 이용하여 정상적으로 데이터가 읽어오는지 확인 합니다.

(본 실습에서는 Adventureworks의 Address 테이블 사용)

 

[용어 조회]작업에 마우스 오른쪽을 클릭하여 [편집]을 선택 합니다

 

아래 그림과 같이 [용어 조회 변환 편집기]가 실행 됩니다.

편집기를 살펴 보면 [참조 테이블]탭에서는 변환에 사용할 참조 테이블을 지정 할 수 있습니다.

참조 데이터는 OLE DB 연결만 가능하며 SQL Server, Access테이블만 조회 가능합니다. 미리 정의된 용어 목록을 별도의 테이블에 저장 시킨 후 변환이 시작될 때 이를 메모리에 캐싱 후 조회 작업을 수행 합니다.

 

SSMS를 실행하여 참조 데이터를 사용할 테이블을 생성하고 데이터를 입력 합니다.

본 실습에서는 참조 데이터는 [Adventureworks] 데이터베이스의 [Person.Address] 테이블을 조회하여 몇몇 단어를 추출하여 [TBL_MasterData] 테이블을 생성하였습니다.

select * from AdventureWorks.person.Address

GO

 

select 'Mt' as Col_text into TBL_MasterData

union all select 'Shoe'

union all select 'St'

union all select 'Way'

union all select 'Avenue'

GO

 

 

[참조 테이블] 탭에서 [OLE DB 연결 관리자]에서 참조 테이블이 있는 연결을 선택하고 [참조 테이블 이름] 에서 참조에 사용할 테이블을 선택 합니다. (TBL_MasterData)

 

[용어 조회] 탭에서 조회에 사용할 입력 열을 선택합니다. 그러면 하단의 속성창에 [통과열]에는 사용자가 선택한 [입력 열]이 나타나며 [출력 열 별칭]에는 사용자가 설정한 별칭으로 출력 됩니다.

 

속성을 지정하고 나면 빈 곳에서 마우스 오른쪽 클릭을 사용하여 [매핑 편집]을 실행 합니다.

 

[관계 만들기]창이 나타나면 [입력 열]과 [조회 열]을 매핑 합니다.

 

매핑이 완료되면 아래 그림처럼 관계선이 나타 납니다.

 

[고급]탭에서는 [옵션]으로 대/소문자 구분을 사용할 것인지 선택 할 수 있습니다.

 

[대상 데이터] 작업에서 마우스 오른쪽을 클릭하여 편집을 선택 합니다.

 

[OLE DB 연결 관리자]에서 대상 DB의 연결 관리자를 선택 합니다. 그리고 [새로 만들기] 버튼을 클릭하여 대상 테이블을 새로 만들어 봅니다. (이미 대상 테이블이 존재하는 경우 [테이블 또는 뷰 이름]에서 대상 테이블을 선택 합니다.)

[새로 만들기]를 선택하면 [용어 조회]에서 출력될 결과물의 테이블과 컬럼이 생성됨을 확인 할 수 있습니다.

 

[매핑] 탭으로 이동하여 대상이 적절히 매핑 되었는지 확인 합니다.

 

편집이 완료 되었으면 패키지를 실행 합니다.

늘 그러듯!

녹색 : 정상 실행

빨간색 : 오류 발생

 

패키지 작업이 완료 되었으면 SSMS를 실행하여 [용어 조회]작업이 잘 되었는지 확인 합니다.

Term : 용어

Frequency : 빈도

AddressLine1 : 입력에 사용된 행

빈도 계산은 입력 데이터 행 단위로 수행 됩니다.

예를 들어 한 입력 한 행에 "a Way Way"라는 단어가 있고 'Way'라는 참조를 조회한다면

Frequency에는 2로 표시 된다.

 

반응형