데이터베이스 개발자 Tip & 강좌

SQLER의 개발자들이 만들어가는 데이터베이스 사용자 Tip & 강좌 게시판입니다. SQL서버, Oracle, MySQL 등 여러 클라우드/오픈소스 기반 데이터베이스 개발 및 운영 관련 팁과 쿼리 노하우를 이곳에서 가장 먼저 접하실 수 있습니다. 많은 도움 되시길 바랍니다.

차원관계 – 참조 관계 유형

 

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

이번 시간에는 차원 관계(참조 관계 유형)에 대해서 알아 보도록 하겠습니다.

 

앞에서 차원과 팩트 테이블간의 관계를 정의하는 차원용도(Dimension Usage0를 살펴 보았습니다. 이외에도 차원과 팩트 테이블 사이에는 다른 유형의 관계를 설정할 수 있습니다.

 

[참조 관계 유형]은 차원 테이블이 팩트 테이블과 직접적인 관계를 가지고 있지 않더라도 다른 차원들을 경유하여 분석하고자 할 때 유용합니다.

 

이번 예제에서 다루게 될 예제로 설명하면 FactResellerSales -> DimReseller -> DimGeography로 참조하고 있습니다.

  • 첫번째는 DimReseller와 DimGeography를 묶어서 하나의 차원을 만들고 측정값 그룹과 일반 관계를 맺습니다.
  • 두번째 방법은 Dimreseller와 DimGeography를 별개의 독립된 차원으로 만든 후 Geography차원을 Reseller차원을 이용하여 측정값 그룹과 관계를 맺습니다.

 

여기에서 두 번째 방법이 참조 관계 유형 입니다.

 

솔루션 탐색기 에서 [Adventure Works DW.dsv]를 더블클릭 또는 [디자이너 보기]를 선택 합니다.

 

빈 곳에서 마우스 오른쪽을 클릭하여 [테이블 추가/제거]를 선택 합니다,

 

[테이블 추가 / 제거] 창이 나타나면 DimGeography, DimReseller를 [포함된 개체]로 추가합니다.

 

 

솔루션 탐색기에서 [Adventure Works DW.cube]를 더블 클릭 또는 [디자이너 보기]를 선택 합니다.

 

 

[테이블 원본 뷰]에서 마우스 오른쪽을 클릭하여 [테이블 표시]를 선택합니다.

 

 

[테이블 표시]창에서 앞에서 추가한 DimGeography, DimReseller를 추가 합니다.

 

 

테이블을 추가 후 [데이터 원본 뷰]창을 보면 아래 그림과 같이

FactResellerSales -> DimReseller -> DimGeography로 참조하고 있습니다.

 

 

솔루션 탐색기에서 [차원] – [새 차원]을 선택 합니다.

 

 

차원 마법사가 나타나면 다음과 같이 차원을 추가 합니다.

생성 방법에는 [기존 테이블 사용]을 선택 합니다.

 

 

[원본 정보 지정]에서 주 테이블을 [DimGeography]를 선택 합니다,

 

 

차원 특성에서 [English Country Region Name]를 [Country]로 이름을 변경 합니다.

 

[Geotraphy]이름을 지정하여 차원을 생성 합니다.

앞에서 차원을 추가한 방법과 동일하게 DimReseller차원을 추가 합니다.

 

 

관련테이블이 나타나면 체크 박스를 해제 합니다. (체크 박스를 선택 할 경우 Reseller에서 자동으로 차원관계가 만들어져 참조 관계를 실습 할 수 없습니다.)

 

[Reseller]이름을 지정하여 차원을 생성 합니다.

 

큐브 디자이너의 차원에서 마우스 오른쪽을 클릭하여 [큐브 차원 추가]를 선택 합니다.

 

 

[큐브 차원 추가] 창에서 앞에서 추가한 차원을 추가 합니다.

 

 

[차원 용도]탭을 클릭합니다.

  • Reseller Sales 측정값 그룹과 Reseller 차원의 교차셀을 클릭하여 일반 관계가 설정되어 있는지 확인 후 취소를 클릭 합니다.
  • Reseller Sales 측정값 그룹과 Geography차원의 교차셀은 관계가 설정되어 있지 않습니다.

 

 

[처리]를 실행합니다. 그리고 브라우저 탭으로 이동하여 Sales Amount값을 필드로 끌어다 놓습니다. 그리고 차원의 [Geography-Country]를 끌어다 놓습니다.

현재 Grography 차원이 Reseller Sales 측정값 그룹과 관계가 없기 때문에 국가가 바뀌어도 값이 변하지 않고 전체 값을 나타냅니다.

 

[차원 용도] 탭으로 이동합니다. Reseller Sales 측정값 그룹과 Grography 차원의 교차셀을 클릭 합니다.

 

 

[관계 정의]창이 나타나면 다음과 참조 관계를 설정 합니다. 이는 현재 Reseller 차원을 경유하여 관계를 맺는 과정입니다.

 

솔루션을 처리 하고 [브라우저] 탭으로 이동 합니다. 다시 연결을 클릭 합니다.

지역별로 리셀러의 판매 금액이 정상적으로 변경된 것을 확인 할 수 있습니다. 


강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp



No. Subject Author Date Views
1593 SSAS Backup 자동화 하기 jevida(강성욱) 2013.11.18 8172
1592 SSAS - MDX 스크립트 jevida(강성욱) 2013.11.18 7265
1591 SSAS - MDX 쿼리 jevida(강성욱) 2013.11.18 8147
1590 SSAS - MDX 활용 jevida(강성욱) 2013.11.12 7184
1589 SSAS - 집계 최적화 jevida(강성욱) 2013.11.12 7406
1588 SSAS - 사용자 계층 설계 jevida(강성욱) 2013.11.12 6610
1587 SSAS - 집계 설계 이해 - (3)집계 마법사에 특성 추가 jevida(강성욱) 2013.11.06 6970
1586 SSAS - 집계 설계 이해 - (2)파티션 수 변경 jevida(강성욱) 2013.11.06 6742
1585 SSAS - 집계 설계 이해 - (1)집계 디자인 마법사 jevida(강성욱) 2013.11.06 7138
1584 SSAS - 계정차원 - (2)단항 연산자 jevida(강성욱) 2013.11.01 6221
1583 SSAS - 계정차원 - (1) 계정 인텔리전스 jevida(강성욱) 2013.11.01 6216
» SSAS - 차원관계 - (1)참조 관계 유형 jevida(강성욱) 2013.10.29 6540
1581 SSAS - 계산 작업 jevida(강성욱) 2013.10.29 6489
1580 SSAS - 고유 카운트 측정값 jevida(강성욱) 2013.10.29 5830
1579 SSAS - 반가산 측정값 집계 jevida(강성욱) 2013.10.25 12371
1578 SSAS - 측정값 그룹의 세분성 jevida(강성욱) 2013.10.25 11022
1577 SSAS - 차원용도 jevida(강성욱) 2013.10.25 5930
1576 SSAS - 측정값 그룹 jevida(강성욱) 2013.10.21 5876
1575 SSAS 넌-리프 수준의 멤버 jevida(강성욱) 2013.10.21 6180
1574 SSAS 부모-자식 차원 - 부모자식 차원 생성 jevida(강성욱) 2013.10.14 6002





XE Login