큐브 만들기
안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://blog.naver.com/jevida)
이번 시간에는 큐브를 만들어 보도록 하겠습니다.
[BIDS]를 실행하여 [Analysis Services 프로젝트]를 생성 합니다.
[솔루션 탐색기]에서 [데이터 원본]에서 오른쪽 마우스를 클릭하여 [새 데이터 원본]을 클릭 합니다.
[데이터 원본 마법사]에서 [새로 만들기]를 선택 합니다.
[연결 관리자]에서 서버이름을 입력하고 데이터베이스에는 [AdventureWorksDW]를 선택 합니다.
[데이터 연결]이 완료 되었으면 [다음]을 클릭 합니다.
[가장 정보]단계에서는 [서비스 계정 사용]을 선택 합니다.
데이터 원본 이름을 지정하고 마침을 클릭 합니다.
[솔루션 탐색기]에서 [데이터 원본]에서 마우스 오른쪽을 클릭하여 [새 데이터 원본 뷰]를 클릭 합니다.
앞에서 만든 원본 뷰를 선택하고 다음을 클릭 합니다.
[데이터 원본 뷰 마법사]에서 DimProductSubCategory를 선택하고 [>]를 클릭하여 [포함된 개체]에 포함 시킵니다.
[관련 테이블 추가] 버튼을 연속 4번 클릭하여 관련된 테이블을 포함 합니다. 그리고 DimCurrency, DimSalesTerritory, FactInternetSalesReason 을 선택하여 [<] 버튼을 클릭하여 포함된 개체에서 제외 합니다.
마법사 완료 단계에서 이름을 지정하고 마침을 클릭 합니다.
솔루션 탐색기에 [Adventure Works DW.dsv]가 나타납니다.
[다이어 그램]창에서 [Dim Time] 테이블을 오른쪽 마우스로 클릭한 후 [새 명명된 계산]을 클릭 합니다.
명명된 계산 만들기 창에서 [열 이름]에 월을 입력하고 식에 다음과 같이 입력 합니다.
CONVERT(CHAR(4), CalendarYear) + ' ' + EnglishMonthName |
[Dim Time]에서 마우스 오른쪽을 클릭하여 [데이터 탐색]을 선택 합니다.
앞에서 추가한 명명된 계산(월)이 정상적으로 조회되는 것을 확인 할 수 있습니다.
솔루션 탐색기에서 [큐브]에 마우스 오른쪽을 클릭하여 [새 큐브]를 선택 합니다.
[생성 방법 선택]에서 [기존 테이블 사용]을 선택 합니다.
측정 그룹 선택에서 데이터 원본 뷰는 [Adventure Works DW]를 선택하고 측정값 그룹 테이블을 선택 합니다. 그리고 [제안] 버튼을 클릭합니다.
측정값 선택에서
Order Quantity
Sales Amount
Order Quantity – Fact Internet Sales
Sales Amount – Fact Internet Sales 를 선택 합니다.
새 차원 확인 단계에서 검색된 차원들의 특성과 계층을 살펴 봅니다.
큐브 이름을 지정하고 마법사를 완료 합니다,
큐브 디자이너 그림창에서 노란색으로 보이는 테이블은 Fact테이블을 나타내고 파란 테이블은 차원 테이블을 나타냅니다. 측정값 창에는 각 팩트 테이블에 대응하는 측정값 그룹이 나타납니다. Analysis Services는 하나의 큐브안에 여러 개의 서로 다른 팩트 테이블을 포함할 수 있습니다.(멀티 팩트 테이블)
측정값 창에 보이는 측정값 그룹과 측정값들의 이름을 다음과 같이 변경 합니다.
Fact Reseller Sales -> Reseller Sales
Order Quantity -> Reseller Order Quantity
Sales Amount -> Reseller Sales Amount
Fact Internet Sales -> Internet Sales
Order Quantity – Fact Internet Sales -> Internet Order Quantity
Sales Amount – Fact Internet Sales -> Internet Sales Amount
그리고 각 측정값을 선택하고 [FormatString] 값을 [#,#]으로 설정 합니다.
솔루션 탐색기에서 [Dim Time.dim]을 더블 클릭 합니다.
큐브 마법사에서 확인 하였던 특성들과 계층이 나타납니다. 만약 계층이 나타나지 않는다면 [데이터 원본 뷰]에서 [특성]으로 마우스 드래그 앤 드롭으로 해당 항목을 끌어 놓고 다시 [특성]에서 [계층]으로 끌어다 놓습니다.
이렇게 하여 큐브가 생성 되었습니다.
다음 시간에는 큐브를 조회하는 방법에 대해서 알아 보도록 하겠습니다.
강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp