이 페이지가 도움이 되셨나요?
아니요

컨텍스트 필터로 뷰 성능 향상

기본적으로 Tableau에서 설정한 모든 필터는 독립적으로 계산됩니다. 즉, 각 필터가 다른 필터에 관계없이 데이터 원본의 모든 행에 액세스합니다. 그러나 하나 이상의 범주형 필터를 뷰의 컨텍스트 필터로 설정할 수 있습니다. 컨텍스트 필터를 독립 필터로 간주할 수 있습니다. 사용자가 설정한 다른 모든 필터는 컨텍스트 필터를 통과하는 데이터만 처리하기 때문에 종속 필터로 정의됩니다.

다음과 같은 용도로 컨텍스트 필터를 만들 수 있습니다.

  • 성능 향상 - 많은 필터를 설정하거나 큰 데이터 원본을 사용하는 경우 쿼리 속도가 느려질 수 있습니다. 하나 이상의 컨텍스트 필터를 설정하여 성능을 개선할 수 있습니다.

  • 종속 숫자 또는 상위 N 필터 만들기 - 특정 데이터만 포함하도록 컨텍스트 필터를 설정한 다음 숫자 또는 상위 N 필터를 설정할 수 있습니다.

예를 들어 대형 식료품점의 조반 제품 담당자가 있다고 가정합니다. 담당 업무는 모든 매장의 수익성별 상위 10개 조반 제품을 찾는 것입니다. 데이터 원본이 매우 큰 경우 조반 제품만 포함하도록 컨텍스트 필터를 설정할 수 있습니다. 그런 다음 수익별 상위 10개 필터를 종속 필터로 만들 수 있습니다. 종속 필터는 컨텍스트 필터를 통과하는 데이터만 처리합니다.

참고: Tableau 9.0부터 일반 ODBC 데이터 원본 및 사용자 지정 데이터 원본을 제외하고 컨텍스트 필터가 더 이상 임시 테이블을 만들지 않습니다.

컨텍스트 필터 만들기

컨텍스트 필터를 만들려면 기존 범주형 필터의 상황에 맞는 메뉴에서 컨텍스트에 추가를 선택합니다. 컨텍스트가 한 번 계산되어 뷰를 생성합니다. 다른 모든 필터는 컨텍스트를 기준으로 계산됩니다. 컨텍스트 필터는 다음과 같습니다.

  • 필터 선반 맨 위에 표시됩니다.

  • 필터 선반에 회색으로 식별됩니다.

  • 선반에서 다시 정렬할 수 없습니다.

아래 표시된 대로 Ship Mode 차원이 뷰의 컨텍스트로 설정됩니다. Region 필터는 Ship Mode를 통과하는 데이터만 사용하여 계산됩니다.

다음 작업을 수행하여 컨텍스트 필터를 수정할 수 있습니다.

  • 필터 선반에서 필드 제거 - 다른 컨텍스트 필터가 선반에 있으면 새 컨텍스트가 계산됩니다.

  • 필터 편집 - 컨텍스트 필터를 편집할 때마다 새 컨텍스트가 계산됩니다.

  • 컨텍스트에서 제거 선택 - 필터가 선반에 표준 필터로 유지됩니다. 다른 컨텍스트 필터가 선반에 있으면 새 컨텍스트가 계산됩니다.

컨텍스트 필터 속도 향상

특히 큰 데이터 원본에서 컨텍스트 필터의 성능을 향상시키려면 다음과 같은 일반 규칙을 따릅니다.

  • 데이터 집합 크기를 줄이는 단일 컨텍스트 필터를 사용하는 것이 많은 컨텍스트 필터를 적용하는 것보다 더 낫습니다. 실제로 필터가 데이터 집합 크기를 1/10 이상 줄이지 않을 경우 컨텍스트 계산으로 인한 성능 저하 때문에 컨텍스트에 필터를 추가하는 것이 더 비효율적입니다.

  • 컨텍스트를 만들기 전에 데이터 모델링을 모두 완료합니다. 차원을 측정값으로 변환하는 등 데이터 모델을 변경할 경우 컨텍스트를 다시 계산해야 합니다.

  • 컨텍스트에 필요한 필터를 설정하고 다른 선반에 필드를 추가하기 전에 컨텍스트를 만듭니다. 이 작업을 먼저 수행하면 다른 선반에 필드를 놓을 때 실행되는 쿼리가 훨씬 빨라집니다.

  • 날짜에 컨텍스트 필터를 설정하려는 경우 연속형 날짜를 사용할 수 있습니다. 그러나 불연속형 날짜에 YEAR(date)와 같은 날짜 구간차원이나 컨텍스트 필터를 사용하면 매우 효과적입니다.

데이터 집합에 많은 인덱스가 있는 경우 컨텍스트 필터를 사용해도 성능이 향상되지 않고 실제로 쿼리 성능이 더 느려질 수도 있습니다.

테이블 대화 상자의 조인된 테이블을 참조된 경우에만 포함합니다. 옵션을 사용할 때는 컨텍스트 필터가 쿼리 성능 향상에 좋지 않은 영향을 줄 수 있습니다. 데이터 조인 아래쪽에 있는 참고를 참조하십시오.

예제 - 컨텍스트 필터 만들기

이 예제에서는 컨텍스트 필터를 만드는 방법을 보여 줍니다. 먼저 매출별 상위 10개 제품을 표시하도록 뷰를 필터링하겠습니다. 그런 다음 상위 10개 가구 제품을 확인할 수 있도록 제품 범주에 컨텍스트 필터를 만들 것입니다.

  1. Sample - Superstore 데이터 원본을 사용하여 아래 표시된 초기 뷰를 만듭니다. 이 뷰는 최고 매출이 맨 위에 오도록 정렬하여 모든 하위 범주의 매출을 보여 줍니다.

  2. 이제 상위 판매 제품만 표시하도록 상위 10 필터를 만듭니다. Sub-Category 필드를 필터 선반에 끌어 놓으면 이 필터를 만들 수 있습니다. 필터 대화 상자에서 상위 탭으로 전환하고 매출 합계별 상위 10인 필터를 정의합니다. 상위 N 필터 정의에 대한 자세한 내용은 뷰에서 데이터 필터링를 참조하십시오.

  3. 확인을 클릭하면 뷰가 매출을 기준으로 상위 10개 제품 하위 범주를 표시하도록 필터링됩니다.

  4. 이제 가구 제품만 표시하도록 다른 필터를 추가하겠습니다. Category 필드를 필터 선반에 끌어 놓고 Furniture만 선택합니다. 작업을 마쳤으면 확인을 클릭합니다.

    뷰가 필터링되지만 이제 10개 제품 대신 3개만 표시됩니다. 기본적으로 모든 필터는 별도로 평가되며 결과의 교집합이 뷰에 표시되기 때문입니다. 따라서 이 뷰는 상위 10개 전체 제품 중 3개가 가구 제품임을 보여 줍니다.

  5. 상위 10개 가구 제품을 확인하려면 Category 필터를 컨텍스트 필터로 만들어야 합니다. 필터 선반에서 필드를 마우스 오른쪽 단추로 클릭하고 컨텍스트에 추가를 선택합니다.

  6. 필터가 컨텍스트 필터로 표시되고 뷰가 상위 4개 가구 제품을 표시하도록 업데이트됩니다. 10개가 아닌 이유는 하위 범주 중 네 개에만 가구가 포함되기 때문입니다. 하지만 해당 컨텍스트의 결과에서 상위 10 필터가 평가된다는 것을 알고 있습니다.