0

6 차원의 데이터웨어 하우스 모델링. 이러한 차원 중 하나는 약 600,000 개의 행이있는 클라이언트와 계정 및 제품과 같은 일부 항목입니다. 필자는 각 차원 테이블의 카디널리티를 곱하여 사실 테이블의 행 수를 추정하여 결과로 1 * 10^12 행을 제공했습니다. 내 질문은, 클라이언트가 특정 제품을 가지고 있지 않다면, 그 제품 (사실 테이블에 cero 값으로)에 대한 행이있을 것인가, 아니면 행이 전혀 없을 것입니까? 이 정보는 내 aproximation이 행 수의 상한선이되는지 또는 정확한 행 수인지 알기 위해 필요합니다.모든 차원 값을 사실 테이블에서 사용해야합니까?

+1

아마도 그렇지 않습니다. 팩트 테이블이 개별 판매를 기록하고 고객이 특정 품목을 구매하지 않은 경우 판매가 없으므로 사실 테이블에 행이 없습니다. 이는 "고객이 제품 X를 구입 하나 제품 Y는 구매하지 않았습니까?", "판매 지역 Z의 고객이 제품 A를 구매하지 않은 고객"과 같은 질문에 쉽게 답할 수 있기 때문에 실제로 도움이됩니다. 등. – Pondlife

+0

고마워! 매우 도움이되는 대답 –

답변

1

각 치수 조합에 대한 항목이 필요하지 않습니다.

일반적으로 팩트 테이블 (또는 큐브)은 이론 크기 (즉, 차원의 카디널리티 곱하기)와 비교할 때 매우 작습니다. 이 이론적 인 수의 행 (또는 셀)은 상대적으로 적은 수의 차원 (예 : 시간, 제품, 지역, 고객, 판매 등 ...)에서도 매우 매우 클 수 있습니다. 이것은 큐브의 드문 드문 (sparsity)으로 알려져 있습니다. OLAP 엔진 (예 : icCube, SSAS 등)은 일반적으로 이러한 희소성을 효율적으로 처리하도록 제작되었습니다.

+0

고마워! 내가 필요한 것. –