이 항목에서는 시계열 함수와 필터 함수의 차이를 설명하고 필터 함수 구현 방법에 대해 설명합니다. 이 정보는 워크북과 클래식 대시보드에 모두 적용됩니다.
시계열 함수와 필터 함수 비교
시계열 함수 Ago
및 Todate
는 year-ago, year-to-date
등을 계산하는 간단한 측정항목 생성 방법을 제공합니다. 이 방법은 비즈니스 사용자 보고서에 적합하지만, 해당 함수는 성능에 상당한 비용이 드는 복잡한 질의를 생성합니다. 또한 해당 함수 중 하나가 보고서에 사용될 때마다 데이터베이스의 더 많은 리소스를 사용하여 추가 하위 질의가 생성됩니다.
클래식 대시보드에서는 시계열 함수를 사용하는 대신 적절한 기간을 기준으로 필터링을 수행하는 데 Filter
함수와 함께 기본 측정항목을 사용하여 동일한 결과를 얻을 수 있습니다. 이 방법의 경우 비즈니스 사용자 보고서용으로는 너무 복잡할 수 있지만 IT 팀이 미리 정의한 대시보드에서는 효과적으로 작동합니다. 이 방법을 사용하면 휠씬 간단하고 효율적인 물리적 SQL 코드가 생성되고 추가 하위 질의가 필요하지 않습니다. 즉, SQL 질의가 더 빨리 실행되고 데이터베이스에서 더 적은 리소스를 사용하므로 전체 데이터베이스 CPU 사용량 및 입력-출력 호출이 줄어듭니다.
다음 그림은 동일한 보고서에서 기본 측정항목과 month Ago
측정항목을 모두 사용할 때 생성되는 물리적 질의의 예입니다. 두 개의 질의가 생성됩니다.
다음 그림은 Filter
함수를 대신 사용할 때 단일 질의에 대해 생성되는 SQL 코드를 보여줍니다.
프롬프트가 포함된 대시보드에서 필터 함수 구현
대부분의 구현에서는 대시보드에 이미 프롬프트가 포함되어 있으므로 사용자가 확인하려는 월을 선택할 수 있습니다. 첫번째 단계는 사용자의 선택에 따라 필터링해야 할 기간을 식별하는 것입니다.
이 예에서는 달력 차원에 Julian Period Number
열이 포함되어 있습니다. 이렇게 하면 계산이 훨씬 쉬워집니다. 이는 Julian Period Number
없이도 가능하지만, 선택된 기간을 계산하려면 훨씬 더 복잡한 공식이 필요합니다.
MonthSelected
)가 추가되도록 Month
프롬프트를 수정합니다.
Julian Period Number
를 검색하여 다른 변수(PeriodNumberSelected
)에 넣기 위한 별도의 대시보드 프롬프트를 생성합니다. 이 두번째 프롬프트는 일반 사용자에게 표시되지 않고 대신 대시보드에 숨겨져 있으며 값은 MonthSelected
변수를 기반으로 자동 계산됩니다.
Julian Period
프롬프트 경로를 추가합니다.
Month
열의 전역 필터를 삭제하고 필요에 따라 Julian Period Number
를 기반으로 하는 열 공식 필터 함수를 사용합니다. 예는 다음과 같습니다.
Current Month: Filter("Revenue Metrics"."Revenue" using "Time"."Julian Month Number"=@{PeriodNumberSelected}{80800})
Month Ago: Filter("Revenue Metrics"."Revenue" using "Time"."Julian Month Number"=@{PeriodNumberSelected}{80800}-1)
Year Ago: Filter("Revenue Metrics"."Revenue" using "Time"."Julian Month Number"=@{PeriodNumberSelected}{80800}-12)
Year to date: Filter("Revenue Metrics"."Revenue" using "Time"."Julian Month Number"<=@{PeriodNumberSelected}{80800} and “Time”.”Year”=@{YearSelected}{2019})
매개변수가 포함된 워크북에서 필터 함수 구현
워크북에서 동일한 원칙을 적용할 수 있습니다. 프롬프트 및 프리젠테이션 변수는 대시보드 필터와 매개변수로 바뀝니다.
세 개의 매개변수(MonthSelected, PeriodNumberSelected 및 YearSelected)를 생성합니다. MonthSelected 매개변수만 대시보드 필터의 캔버스에 표시됩니다.
MonthSelected 매개변수에 대해 가능한 값은 모든 월을 선택하는 논리적 SQL 질의를 기반으로 정의됩니다.
PeriodNumberSelected 및 YearSelected 매개변수의 경우 가능한 값이 채워지지 않습니다.
.jpg''
MonthSelected 값에 따라 필터링된 논리적 질의로 초기 값만 채워집니다.
.jpg''