2016-10-13 5 views
0

관계형 SQL Server 데이터베이스 배경에서 왔으며 Analysis Services에서 다차원 모델로 전환하려고합니다.사실 테이블 디자인 - 일대 다

저는 다음과 같은 문제에 접근하는 방법에 어려움을 겪고 있습니다. 관계형 세계에서는 믿기지 않을 정도로 간단합니다.

인시던트, IncidentOffender 및 IncidentLoss 테이블이 3 개 있습니다. 아무도, 하나, 또는 여러 IncidentOffenders 및 IncidentLosses은 사건에 없을 수 있습니다

enter image description here

나는, "얼마나 많은 시간을 예를 들어, 큐브를 요청 할 수 있도록 내 데이터웨어 하우스를 설계 할 수있는 방법

우리는 대머리범이 구운 콩을 훔쳐간 사건에 대처하는 데 지출 했습니까? "뿐만 아니라"그 콩의 가치는 무엇 이었습니까? "

사과가 간단하지만 웹을 샅샅이 뒤졌으며 다양한 책을 먹었지만 나에게도 일상적인 상황처럼 보이는 이처럼 실제적인 예는 찾을 수 없습니다.

+0

나에게 잘 보이는,하지만 난 사실 테이블과 차원 등의 사건과 IncidentOffender로 IncidentLoss 모델 것 같아요. – tobi6

+0

감사합니다. 그러면 FactIncidentLoss에 IncidentLossID, IncidentID 및 IncidentOffenderID가 포함됩니까? 인시던트에 하나 이상의 IncidentOffender가있을 수 있으므로 문제의 원인이되는 것은 마지막 것입니다. – Nugsson

+0

그 요구 사항과 함께 매핑 m : n 테이블로 가서 성능 문제를 신중하게 테스트해야합니다. – tobi6

답변

1

시나리오에서 세 개의 테이블을 모두 차원과 측정 값 그룹으로 SSAS에로드해야합니다. 그런 다음 인시던트 위반자 및 인시던트 손실 차원은 인시던트 측정 값 그룹의 다 대다 차원 일 수 있습니다. 차원 사용법 탭에서 다음과 같이 보입니다.

enter image description here

+0

이 점에 대해 많은 감사를드립니다. 실제로 제가 만든 첫 번째 큐브로 해결 한 솔루션이지만, 결코 그것에 익숙하지 않았습니다. 여기서 '가장 좋은 방법'은 가능한 한 가장 세분화 된 단일 사실 테이블을 가진 2 큐브 (또는 필요한 경우 더 많은 큐브)를 작성하는 것입니까? – Nugsson

+1

아니요. 큐브 당 하나의 팩트 테이블은 분명히 모범 사례가 아닙니다. 같은 보고서에서 여러 팩트 테이블의 측정 값을 분석 할 때 많은 이점이 있습니다. 당신의 경우 다른 두 팩트 테이블은 다 대다 차원을위한 브리지 테이블 일 뿐이므로 주제는 약간 떨어져 있습니다. – GregGalloway

+0

문제는 @ GregGalloway입니다. 나는 여전히 문제를 궁리하고 있지만 일단 행복하다면 이것을 받아 들인 대답으로 표시 할 것입니다. – Nugsson