2014-11-07 5 views
0

"FactActivity"라는 팩트 테이블과 사용자, 클라이언트, 작업, 날짜 및 거주자와 같은 몇 가지 차원 테이블이 있습니다. 다음 는 I 그들 각각에 대응하는 계수 그룹을 생성여러 개의 옵션이있을 때 많은 중간 관계 그룹에서 올바른 중간 측정 값 그룹을 선택하는 방법

    ActivityCount의
  1. FactActivity => 합계
  2. DimUser => 행 카운트
  3. DimTenant => 행 카운트
  4. DimDate => 카운트 colums 행 수 및 weekofyear 열의 고유 한 수

각 사용자는 여러 클라이언트를 사용하여 여러 작업을 수행 할 수 있습니다. 세입자는 논리적 인 사용자 그룹입니다. 따라서 세입자는 여러 사용자를 포함하지만 사용자는 한 명 이상의 세입자에게 속할 수 없습니다. 모든 차원 테이블과 팩트 테이블은 정규 관계를 통해 DimDate에 연결됩니다.

큐브 구조는 다음과 같습니다.

enter image description here

는 지금은 측정 값 그룹의 각 차원의 관계를 정의하고 싶다. 그들 중 일부는 Many-Many relationsip (별개의 계산 계산을 가능하게하기 위해)입니다. 디자이너는 여러 교차로 중에서 선택할 수있는 여러 옵션을 보여줍니다. 중간 측정 그룹으로 선택할 수있는 항목이 무엇인지 혼란 스럽습니다. 필자는 항상 전체 # 행이 가장 적은 측정 값 그룹을 선택해야합니까? DimDate? 또는 중간 척도 그룹을 결정하는 올바른 논리는 무엇입니까?

이것이 내가 얻은 것입니다. 이게 옳은 거니? 만약 아니라면, 무엇이 잘못 되었습니까? 자세한 내용은

enter image description here

정답을 선택 간염합니다.

  • FactActivity 10 억 행
  • DimUser = 3500 만 행
  • DimTenant = 1 만 행
  • DimDate는 = 1000 행
+0

메트릭에 합계가 있습니다. 날짜, 사용자, 세입자 각각의 행 수가 측정 됨 – user330612

+0

헤더가 완전히 읽을 수 있고 잘리지 않고 화살표가 교차하지 않도록 첫 번째 이미지를 변경할 수 있습니까? 세부 정보를 해독하는 것은 약간 어렵습니다. 또한 StackOverflow에서 주석을 추가하는 대신 원래의 질문을 편집해야합니다. – FrankPl

+0

gotcha. 내 잘못이야. 사진을 편집하고 Q 자체에 측정 정보를 추가합니다. – user330612

답변

1

올바른 방법을 중간 계수 그룹 의존 선택할 관련 측정 기준과 관련하여 측정 항목을 평가하는 방법에 대한 정보 :

h 임차인 차원에 대한 활동 측정 값 그룹 : 질문 : Analysis Services가 임차인의 활동 계수 (또는 활동 측정 값 그룹의 다른 값)를 어떻게 결정해야합니까? 이를 판별하는 유일한 합리적인 방법은 활동 사실 테이블에서 사용자 테이블을 거쳐 테넌트 테이블로 이동하는 것입니다. 사실, 마지막 관계는 다 대다 관계가 아니라 다 대일 관계입니다. I. e. 이를 사용자 차원에 통합하여 테넌트 차원을 최적화 할 수 있습니다. 그러나 다 - 대 - 다 관계를 사용하는 것도 효과적 일 수 있습니다. 다 대 다 관계 대신 사용자에서 테넌트로 참조 관계를 사용하는 것도 고려해 볼 수 있습니다. 그리고 당신이 두 개의 분리 된 차원을 가지기로 선택한 이유에 대해서는 다른 고려 사항이있을 수 있습니다. 따라서 더 이상의 논의는하지 않습니다.세입자 측정 그룹 대 사용자 차원 : 사용자가 구성한 방법 (날짜 측정 값 그룹 사용)은 세입자와 사용자가 공통으로 가지고있는 각 날짜에 대해 다음과 같이 설정합니다. 사용자의 테넌트 수는 계산에 1을 더합니다. 이것은 아마도 당신이 원하는 것이 아닙니다. 사용자 측정 값 그룹에 의해 사용자 차원에 세입자 측정 값을 연결하고자한다고 가정합니다. 그러나 사용자 및 입주자 차원 테이블에서 DateKey의 목적이 무엇인지 전혀 확신 할 수 없습니다. 따라서 귀하의 관계는 정확할 수 있습니다.

측정 단위 그룹과 임차인 및 사용자 차원의 관계를 계속 진행해 보겠습니다. 저는 연중 주간과 날짜 계산이 세입자 나 사용자에 의존하지 않기 때문에 전혀 관계가 없어야한다고 생각합니다. 일부 측정 값 그룹과 일부 측정 기준 간에는 아무 관계가없는 것이 좋습니다. Microsoft 샘플 큐브 인 "Adventure Works"를 보면 Dimension Usage에서 흰색보다 회색 셀 (즉, 측정 그룹과 차원이 서로 관련이 없음)이 더 많이 있습니다 (즉, 측정 값 그룹과 차원간에 어떤 종류의 관계가 있음) 유형). 측정 값 그룹의 기본 설정이 IgnoreUnrelatedDimensions = true 인 경우 측정 값이 측정 기준의 모든 구성원에 대해 동일 함을 의미합니다. 이는 날짜 수와 주별 경우에 해당됩니다. 그러나 사용자 및 입주자 차원 테이블에서 DateKey의 목적을 알지 못하기 때문에이 가정이 데이터에 맞는지 확실하지 않습니다.

그리고이 예제를 실행 한 후에도 나머지 관계를 계속 진행할 수 있기를 바랍니다.

+0

대책에 대한 설명을 추가했습니다 – user330612

+0

프랭크에 대한 자세한 설명 주셔서 감사합니다. 모든 차원 테이블에 DateKey가있는 이유는 SCD 기능을 허용하기 위해서입니다. 이러한 모든 차원은 천천히 변화하므로 변경 사항에 대한 전체 기록이있는 날짜 키가 있습니다. 이해가 되니? – user330612