차원 – (3)롤-플레잉 차원

By 01/08/2018SSAS 강좌

차원 – (3)롤-플레잉 차원

 

이번 시간에는 차원에 대해서(그 중에 롤-플레잉 차원) 알아 보도록 하겠습니다. 차원 테이블과 팩트 테이블 사이에는 참조 관계가 존재 합니다. 대부분의 경우에는 하나의 관계자 존재하는데 경우에 따라서 여러 개의 관계가 존재 할 수 있습니다. 이 때 각 관계는 역할에 따라 구분이 됩니다.

팩트 테이블이 동일한 차원 테이블을 여러 역할을 가지고 참조하는 경우 해당 차원 테이블을 기반으로 정의한 차원을 큐브에 포함시킬 때 각 역할별로 차원을 별도로 정의하지 않고 하나의 차워을 역할별로 재활용할 수 있습니다. 이를 롤-플레잉 차원이라고 합니다.

 

실습을 통해서 롤-플레잉 차원에 대해서 알아 보도록 하겠습니다.

 

이번 실습을 위해서는 반드시 지난 시간 작업이 선행 되어야 합니다.

 

[솔루션 탐색기]에서 [데이터 원본 뷰]에서 [Adventure Works DW.dsv]에서 마우스 오른쪽을 클릭하여 [디자이너 보기]를 선택 또는 원본 뷰를 더블 클릭합니다.

 

다이어그램 창의 빈 곳을 오른쪽을 클릭하여 [테이블 추가/제거]를 선택 합니다.

 

[테이블 추가/제거] 창에서 [FactResellerSales]를 포함된 개체에 추가하고 확인을 클릭 합니다.

 

새로 추가된 테이블을 보면 아래 그림과 같이 FactResellerSales와 DimTime 사이에 세 개의 관계가 보입니다.

[솔루션 탐색기]에서 [큐브]에서 마우스 오른쪽을 클릭하여 [새 큐브]을 선택 합니다

 

큐브 마법사가 시작되면 [생성 방법 선택]에서 [기존 테이블 사용]을 선택 합니다.

 

[측정값 그룹 테이블 선택]에서 [FactResellerSales]를 선택 합니다.

 

측정값 선택에서는 Order Quantity, Sales Amount를 선택 합니다.

 

기존 차원을 추가합니다.

 

새 차원을 선택 합니다.

 

큐브 이름을 지정하고 마법사를 완료 합니다.

 

아래 그림에서 보면 차원 창에 Due Date, Order Date, Ship Date라는 세 개의 롤-플레잉 차원이 자동으로 추가된 것을 확인 할 수 있습니다. Time 차원을 큐브 차원으로 추가시 Dim Time 테이블과 FactInternetSales 테이블 사이에 관계들을 기반으로 자동 처리된 것입니다.

 

완료 되었으면 프로젝트를 배포 합니다.

 

2012-07-03 / 강성욱 / http://sqlmvp.kr / http://sqlangeles.com

 

SSAS, OLAP, 다차원모델링, BI, 큐브, MSBI, MSCUBE, SQLServer, mssql, 큐브만들기, BIDS, SSDT, 롤플레잉 차원

Leave a Reply

%d bloggers like this: