Merged PR 3482: Adapts date dimension skeleton for Main KPIs
# Description New model: * int_kpis__agg_dates_main_kpis - Serves as the skeleton of dates and dimensions for Main KPIs. It's aggregated since it follows a similar aggregation strategy. It's a single model to feed both Main KPIs visualisations. Note boolean fields are real booleans (true/false) while before these were integers (1/0). This also affects downstream models. Main KPIs flow adaptations to new skeleton model: * int_monthly_aggregated_metrics_history_by_deal * int_monthly_churn_metrics - additionally, calls usual KPIs macro instead of old one * int_mtd_vs_previous_year_metrics Reporting changes to ensure report is not down: * mtd_aggregated_metrics - adaptations on booleans (true-1, false-0) Cleaning: * get_kpi_dimensions macro is no longer used * int_dates_by_deal model and schema entry * int_dates_mtd_by_dimension model and schema entry * int_dates_mtd model and schema entry # Checklist - [X] The edited models and dependants run properly with production data. - [X] The edited models are sufficiently documented. - [X] The edited models contain PK tests, and I've ran and passed them. - [X] I have checked for DRY opportunities with other models and docs. - [X] I've picked the right materialization for the affected models. # Other - [ ] Check if a full-refresh is required after this PR is merged. Related work items: #23763
This commit is contained in:
parent
2f80642f6c
commit
9ba0edb82d
12 changed files with 197 additions and 416 deletions
|
|
@ -1,4 +1,4 @@
|
|||
{% set dimensions = get_kpi_dimensions() %}
|
||||
{% set dimensions = get_kpi_dimensions_per_model("CHURN_RATES") %}
|
||||
{% set churn_lifecycle_states = "('05-Churning')" %}
|
||||
|
||||
{{ config(materialized="table", unique_key=["date", "dimension", "dimension_value"]) }}
|
||||
|
|
@ -6,8 +6,12 @@ with
|
|||
int_monthly_12m_window_contribution_by_deal as (
|
||||
select * from {{ ref("int_monthly_12m_window_contribution_by_deal") }}
|
||||
),
|
||||
int_dates_mtd_by_dimension as (
|
||||
select * from {{ ref("int_dates_mtd_by_dimension") }}
|
||||
int_kpis__agg_dates_main_kpis as (
|
||||
select *
|
||||
from {{ ref("int_kpis__agg_dates_main_kpis") }}
|
||||
where
|
||||
dimension in ('global', 'by_number_of_listings', 'by_billing_country')
|
||||
and dimension_value <> 'UNSET'
|
||||
),
|
||||
int_kpis__dimension_daily_accommodation as (
|
||||
select * from {{ ref("int_kpis__dimension_daily_accommodation") }}
|
||||
|
|
@ -78,7 +82,7 @@ select
|
|||
cast(
|
||||
c.listings_booked_in_month_churn_average_contribution as numeric(19, 6)
|
||||
) as listings_booked_in_month_churn_average_contribution
|
||||
from int_dates_mtd_by_dimension d
|
||||
from int_kpis__agg_dates_main_kpis d
|
||||
left join
|
||||
churn_metrics_per_date c
|
||||
on c.date = d.date
|
||||
|
|
@ -86,4 +90,4 @@ left join
|
|||
and c.dimension_value = d.dimension_value
|
||||
-- Remove current month dates since data won't be available anyway. This is specific
|
||||
-- for this churn metrics model
|
||||
where d.is_current_month = 0
|
||||
where d.is_current_month = false
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue