Skip to content

Commit

Permalink
fix: Make instance aggregations daily instead of hourly
Browse files Browse the repository at this point in the history
These currently get bogged down on large datasets, when querying across all time. This is an attempt to speed things up.
  • Loading branch information
bmtcril committed May 29, 2024
1 parent c6ee178 commit 33530af
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 14 deletions.
8 changes: 4 additions & 4 deletions models/instance/fact_instance_actors.sql
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
materialized="materialized_view",
schema=env_var("ASPECTS_XAPI_DATABASE", "xapi"),
engine=get_engine("AggregatingMergeTree()"),
order_by="(emission_hour)",
partition_by="(toYYYYMM(emission_hour))",
order_by="(emission_day)",
partition_by="(toYYYYMM(emission_day))",
)
}}

select
date_trunc('hour', emission_time) as emission_hour,
date_trunc('day', emission_time) as emission_day,
uniqCombinedState(actor_id) as actors_cnt
from {{ ref("xapi_events_all_parsed") }}
group by emission_hour
group by emission_day
11 changes: 5 additions & 6 deletions models/instance/fact_instance_enrollments.sql
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
materialized="materialized_view",
schema=env_var("ASPECTS_XAPI_DATABASE", "xapi"),
engine=get_engine("SummingMergeTree()"),
order_by="(emission_hour)",
partition_by="(toYYYYMM(emission_hour))",
order_by="(emission_day, course_key, enrollment_mode, enrollments_status)",
partition_by="(toYYYYMM(emission_day))",
)
}}

Expand All @@ -19,11 +19,10 @@ with
)

select
date_trunc('hour', emission_time) as emission_hour,
courses.course_name as course_name,
date_trunc('day', emission_time) as emission_day,
enrollments.course_key,
enrollments.enrollment_mode as enrollment_mode,
enrollments.enrollment_status as enrollment_status,
count() as course_enrollment_mode_status_cnt
from enrollments
join {{ ref("course_names") }} courses on enrollments.course_key = courses.course_key
group by emission_hour, course_name, enrollment_mode, enrollment_status
group by emission_day, course_key, enrollment_mode, enrollment_status
8 changes: 4 additions & 4 deletions models/instance/fact_instance_events.sql
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
materialized="materialized_view",
schema=env_var("ASPECTS_XAPI_DATABASE", "xapi"),
engine=get_engine("AggregatingMergeTree()"),
order_by="(emission_hour)",
partition_by="(toYYYYMM(emission_hour))",
order_by="(emission_day)",
partition_by="(toYYYYMM(emission_day))",
)
}}

select
date_trunc('hour', emission_time) as emission_hour,
date_trunc('day', emission_time) as emission_day,
uniqCombinedState(event_id) as events_cnt
from {{ ref("xapi_events_all_parsed") }}
group by emission_hour
group by emission_day

0 comments on commit 33530af

Please sign in to comment.