본문 바로가기

Power BI

데이터 모델에서 관계 방향의 이해

각 관계에는 단방향 또는 양방향 교차 필터가 있을 수 있습니다. 필터링은 항상 일에서 다의 방향으로 발생합니다. 교차 필터가 양방향 인 경우 (, 두 개의 화살표가 있는 경우) 필터링은 다 측에서 일 측으로도 발생합니다. 이 동작을 이해하는 데 예제가 도움이 될 수 있습니다. 보고서가 그림 1-1에 표시된 데이터 모델을 기반으로 하고 행에 연도가 있고 값 영역에 제품 이름의 수량 및 개수가있는 경우 아래와 같은 결과를 확인 있습니다.

그림 1-1

Calendar Year Date 테이블에 속하는 열입니다. Date Sales와의 관계의 한쪽에 있기 때문에 엔진은 연도를 기준으로 Sales를 필터링합니다. 이것이 표시된 수량이 연도별로 필터링되는 이유입니다. 제품의 경우 시나리오가 약간 다릅니다. 필터링은 Sales Product 테이블 간의 관계가 양방향이기 때문에 발생합니다. 보고서에 제품 이름 수를 입력하면 연도의 필터가 Sales를 통해 Product로 전파되기 때문에 매년 판매 된 제품 수를 얻습니다. 판매와 제품 간의 관계가 단방향이면 다음 섹션에서 설명하는 것처럼 결과가 달라집니다.행에 Color를 입력하고 값 영역에 Count of Date를 추가하여 보고서를 수정하면 다음과 같은 결과를 있습니다.

행의 필터는 Product 테이블의 색상 열입니다. Product Sales와의 관계의 한쪽에 있기 때문에 Quantity가 올바르게 필터링됩니다. Product Name의 개수는 행에있는 테이블, Product에서 값을 계산하기 때문에 필터링됩니다. 예상치 못한 숫자는 Count of Date입니다. 실제로 모든 행에 대해 항상 동일한 값, Date 테이블의 총 행 수를 표시합니다. 색상 열에서 오는 필터는 날짜와 판매 간의 관계가 단방향이기 때문에 날짜로 전파되지 않습니다. 따라서 Sales에 활성 필터가 있어도 관계 유형으로 인해 필터가 Date로 전파 될 수 없습니다. 양방향 교차 필터링을 사용하기 위해 Date Sales 간의 관계를 변경하면 결과는 다음과 같습니다.

이제 숫자는 주어진 색상의 제품이 하나 이상 판매 된 일수를 반영합니다. 언뜻보기에 모든 관계가 양방향으로 정의되어야하는 것처럼 보일 수 있으므로 필터가 어떤 방향으로도 전파되고 항상 의미있는 결과를 반환 할 수 있습니다. 나중에 이에 대한 부분에 대해서 조금 더 자세히 다루겠지만, 이런 방식으로 데이터 모델을 디자인하는 것은 거의 적절하지 않습니다. 실제로 작업중인 시나리오에 따라 올바른 관계 전파를 선택합니다. 양방향 필터는 편리한 부분이 분명이 있지만, 그 만큼 신경 써서 생각 해야 하는 부분이 발생 할 수 있습니다.

'Power BI' 카테고리의 다른 글

데이터 모델의 이해  (0) 2021.05.15
DAX란  (0) 2021.05.15
BI의 개념  (0) 2019.09.27
파워쿼리 - 1. 설치와 인터페이스 살펴보기  (1) 2019.02.07
파워쿼리 - 파워쿼리의 강력함 그냥 따라해보기  (0) 2019.01.25