본문 바로가기

테크놀로지와 데이터

컨텍스트 필터(Null 제외, 데이터베이스 모든 값, 컨텍스트 관련된 값)

컨텍스트 필터란?

context 

명사 (어떤 일의) 맥락, 전후 사정

 

동일 데이터 원본에서 하나 이상의 필터들에 대하여 다른 필터들을 연결하여 맥락을 갖고 연결될 수 있도록 해 주는 기능입니다.

 

 

기본적으로 일반 필터는 독립적으로 계산되어 각 필터가 다른 필터에 관계없이 데이터 원본의 모든 행에 접근합니다. 그러나 하나 이상의 범주형 필터(측정값 이름)를 컨텍스트 필터로 설정하여 필터링된 데이터 원본에 다른 필터들이 접근할 수 있도록 할 수 있습니다.

그렇기 때문에 사용자가 설정한 다른 모든 일반 필터는 데이터 원본에서 먼저 컨텍스트 필터를 통과한 데이터만 처리하게 됩니다. 그러므로 미리 사용할 항목들만 선별하여 그 안에서 일반 필터가 동작하도록 구성하면 불필요한 검색을 줄일 수 있습니다. 결론적으로, 대시보드의 동작 속도에 긍정적인 영향을 미칩니다.

 

이제 사례를 하나 들어보겠습니다. 종종 필터를 설정할 때 은근히 컨텍스트 필터로 사용할지 일반 필터로 사용할지, 필터 목록에 Null을 제거하고 싶거나 목록에 내가 원하는 목록만 나오게 하고 싶을 때가 있을 것입니다.

 

이럴 때 필터 기능을 중복해서 사용하면 원하는 목록만 보여줄 수 있습니다.

Null 항목 및 제외하고 싶은 항목을 제외할 필드(복제본)와 실질적으로 사용할 필드를 같이 준비

 

제외하고 싶은 항목을 제거하고 필터 목록을 보여주는 방법은 다음과 같습니다.

 

1. 실제로 보여줄 목록이 있는 필드를 필터에 올려놓기 전 복제본을 하나 만들고 필요 없는 항목 제거하는 용도로 사용할 것입니다.

복제본 필드에서 사용하지 않는 항목을 제외하고 실질적으로 사용할 원본 필드를 필터로 사용

 

2. 복제본 필드와 원본 필드 모두 컨텍스트 필터로 변경해 줍니다.

 

컨텍스트 필터는 일반 필터보다 상위에서 필터링하기 때문에 데이터의 절대적인 총량을 줄일 수 있습니다. 따라서 필터 동작에 따른 집계 시간을 어느 정도 줄일 수 있어 대시보드 성능에 긍정적인 영향을 끼치게 됩니다.

대시보드에서 공통으로 걸린 필터라면 컨텍스트 필터로 변경해 주는 것도 효율적인 방법이 될 것입니다. 그 이후 각 시트별로 추가 필터를 적용할 경우가 생기면 그때 일반 필터로 나머지 필터링을 진행해 줍니다.

 

3. 실제 필터로 사용할 필드를 사용할 때 필요한 항목만 표시되도록 할 것입니다. '필터 표시' 후 두 필드를 비교하며 실제 필터로 사용할 필드의 필요한 항목만 걸러내도록 하겠습니다.

 

4. 실제로 보여주고자 하는 원본 필드와 해당 필드의 복제본을 모두 ‘필터 표시’로 표시합니다. 그러면 화면 우측에 다음과 같이 필터들이 표시될 것입니다.

 

5. 필터의 오른쪽에 커서를 가져가면 아래쪽 세모(▼)가 표시됩니다. 이 버튼을 클릭하면 기본적으로 가져오는 항목들은 '데이터베이스의 모든 값'으로 선택되어 있습니다. 여기서 ‘컨텍스트의 모든 값’으로 변경해줍니다.


‘컨텍스트의 모든 값’을 선택한 이유는 두 필드 모두 컨텍스트 필터로 설정되어 있고그 컨텍스트 필터를 기준으로 값을 표시하려고 하기 때문입니다.

이미 두 필드 모두 컨텍스트 필터로 설정되어 있습니다. 컨텍스트 필터 중에서 하나의 필드만이라도 제외한 항목이 있을 경우 컨텍스트 자체에 적용되므로 필터로 사용할 필드에도 제외된 항목들이 필터링되어 적용됩니다.

 

 

세 항목에 대한 차이는 다음과 같습니다.

 

관련된 값만 : 현재 컨텍스트(즉, 다른 필터에 의해 이미 제한된 데이터 집합) 내에서만 필터링할 수 있는 값을 표시합니다.

 

컨텍스트의 모든 값 : 컨텍스트 필터에 의해 제한된 데이터 집합 내의 모든 값을 표시합니다. 즉, 관련된 값만 옵션과 유사하지만 특정 필터를 컨텍스트로 설정하여 그 필터를 기준으로 값을 표시합니다.

 

데이터베이스의 모든 값 : 현재 데이터 원본의 전체 데이터 집합에서 필터링할 수 있는 모든 값을 표시합니다. 다른 필터가 적용되었더라도 상관없이 데이터베이스에 존재하는 모든 값을 표시합니다.

 


6. 최종적으로보여주고 싶은 목록만 필터로 보여줄 수 있습니다.

 

 

제외된 항목을 보여주지 않는 것은 대시보드에서 필터를 표시하고 해당 필터를 따라 필터링된 정보를 보여줄 때 요긴하게 쓰입니다. 그러나 각 단계마다 필터가 필요하기 때문에 복제본을 사용해야 한다는 것을 기억해야 할 것입니다.