관계 및 기수와 함께 작업

완료됨

다른 데이터베이스 관리 시스템과는 달리, Power BI 관계에 방향성 이라는 개념이 있습니다. 이러한 방향성은 여러 테이블 간의 데이터를 필터링하는 데 중요한 역할을 합니다. 데이터를 로드할 때 Power BI 열 이름과 일치하는 데이터를 찾아 자동으로 데이터 내에 존재하는 관계를 찾습니다. 관계 관리 를 사용하여 이러한 옵션을 수동으로 편집할 수도 있습니다.

예를 들어, Sales 데이터베이스에서 많은 테이블을 검색했고, 다음 이미지는 의미 모델의 예입니다. Power BI 여러 관계를 자동으로 감지했지만, 그 의미를 알 수 없습니다. 데이터에 존재하는 관계를 정확하게 반영하는지 확인해야 합니다.

관계

다음은 여러분이 찾을 수 있는 다양한 유형의 관계입니다 Power BI.

다대일 (*:1) 또는 일대다 (1: *) 관계

  • 한 열에 있는 값의 인스턴스가 여러 개 있고, 이 값들이 다른 열에 있는 하나의 고유한 해당 인스턴스와만 관련된 관계를 설명합니다.

  • 사실 테이블과 차원 테이블 간의 방향성을 설명합니다.

  • 가장 일반적인 방향성 유형이며 관계를 자동으로 생성할 때의 기본값입니다. Power BI

일대다 관계의 예로는 CountryName과 Territory 테이블 간의 관계가 있는데, 여기서는 하나의 고유한 국가에 연관된 여러 지역이 있을 수 있습니다.

일대일(1:1) 관계:

  • 두 테이블 사이에서 하나의 값 인스턴스만 공통되는 관계를 설명합니다.

  • 두 테이블 모두에 고유한 값이 필요합니다.

  • 이 관계는 중복된 정보를 저장하고 모델이 올바르게 설계되지 않았음을 나타내므로 권장되지 않습니다. 표를 결합하는 것이 더 나은 방법입니다.

일대일 관계의 예로는 두 개의 서로 다른 테이블에 제품과 제품 ID가 있는 경우가 있습니다. 일대일 관계를 만드는 것은 중복되며, 이 두 테이블은 결합되어야 합니다.

다대다(.) 관계:

  • 두 테이블 간에 많은 값이 공통적으로 존재하는 관계를 설명합니다.

  • 관계의 두 테이블 모두에 고유한 값이 필요하지 않습니다.

  • 권장하지 않습니다. 고유한 값이 없으면 모호성이 발생하고 사용자가 값의 어느 열이 무엇을 참조하는지 알지 못할 수 있습니다.

예를 들어, 다음 그림은 OrderDate 열을 기준으로 Sales 테이블과 Order 테이블 간의 다대다 관계를 보여줍니다. 그 이유는 여러 판매에 여러 주문이 연관될 수 있기 때문입니다. 두 테이블 모두 동일한 주문 날짜를 가질 수 있기 때문에 모호성이 발생합니다.

교차 필터 방향

데이터는 관계의 한 쪽 또는 양쪽에서 필터링될 수 있습니다.

단일 교차 필터 방향:

  • 관계에서 하나의 테이블만 데이터를 필터링하는 데 사용할 수 있습니다. 예를 들어, 표 1은 표 2로 필터링할 수 있지만, 표 2는 표 1로 필터링할 수 없습니다.

    따라와 테이블 간 관계에 대한 화살표의 방향을 확인하여 필터가 어느 방향으로 흐를지 알아보세요. 일반적으로 이러한 화살표는 팩트 테이블에 가리키다로 표시됩니다.

  • 일대다 또는 다대일 관계의 경우 교차 필터 방향은 "일" 쪽에서 시작되는데, 이는 많은 값이 있는 테이블에서 필터링이 수행된다는 것을 의미합니다.

양방향 교차 필터 방향 또는 양방향 교차 필터링을 사용하는 경우:

  • 관계에 있는 한 테이블을 사용하여 다른 테이블을 필터링할 수 있습니다. 예를 들어, 차원 테이블은 사실 테이블을 통해 필터링할 수 있으며, 사실 테이블은 차원 테이블을 통해 필터링할 수 있습니다.

  • 다대다 관계에 양방향 교차 필터링을 사용하면 성능이 낮아질 수 있습니다.

양방향 교차 필터링에 대한 주의 사항: 양방향 교차 필터링 관계를 활성화하려면 그렇게 할 경우의 결과를 완전히 이해해야 합니다. 이를 활성화하면 모호성, 과도한 샘플링, 예상치 못한 결과 및 잠재적인 성능 저하가 발생할 수 있습니다.

기수 및 교차 필터 방향

일대일 관계의 경우 사용 가능한 유일한 옵션은 양방향 교차 필터링입니다. 이 관계의 양쪽에서 데이터를 필터링하여 하나의 뚜렷하고 모호하지 않은 값을 얻을 수 있습니다. 예를 들어, 하나의 제품 ID로 필터링하면 단일 제품이 반환될 수 있고, 하나의 제품으로 필터링하면 단일 제품 ID가 반환될 수 있습니다.

다대다 관계의 경우 양방향 교차 필터링을 사용하여 단방향 또는 양방향으로 필터링할 수 있습니다. 양방향 교차 필터링과 관련된 모호성은 다대다 관계에서 더욱 증폭되는데, 그 이유는 서로 다른 테이블 간에 여러 경로가 존재하기 때문입니다. 측정, 계산 또는 필터를 생성하는 경우 데이터가 필터링되는 위치에 예상치 못한 결과가 발생할 수 있으며, 필터링하는 관계에 따라 다릅니다. Power BI 필터를 적용할 때 엔진이 선택하는 값에 따라 최종 결과가 다를 수 있습니다. 이런 상황은 양방향 관계에도 해당되며, 이를 사용할 때는 주의해야 합니다.

이러한 이유로 다대다 관계 및/또는 양방향 관계는 복잡합니다. 집계 시 데이터가 어떤 모습인지 확실히 알지 못하면 여러 필터링 방향이 있는 이러한 유형의 개방형 관계로 인해 데이터 경로가 여러 개 생길 수 있습니다.

다대다 관계 생성

고객 및 계정의 예산을 검토하는 시각적 자료를 구축하는 작업을 맡은 상황을 생각해 보세요. 동일한 계정에 여러 고객이 있을 수 있으며, 동일한 고객이 여러 계정에 있을 수 있으므로 다대다 관계를 만들어야 한다는 사실을 알고 계실 겁니다.

이 관계를 만들려면 다음으로 이동하세요. 관계 관리> 새로운. 결과 창에서 다음 사이의 관계를 만듭니다. 고객 ID CustomerTable과 AccountTable의 열. 관계는 다대다로 설정되고 필터 유형은 양방향입니다. 즉시, 두 열 모두 고유한 값을 갖지 않을 것으로 예상되는 경우에만 이러한 유형의 관계를 사용해야 한다는 경고가 표시됩니다. 예상치 못한 값이 발생할 수 있기 때문입니다. 양방향으로 필터링하고 싶으시다면 선택하세요 양방향 교차 필터링.

확인을 선택합니다. 이제 다대다 관계가 성공적으로 생성되었습니다.

자세한 내용은 다음을 참조하세요. 다대다 관계 Power BI.