Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Custom offset window: support grains smaller than base grain #1648

Closed
wants to merge 6 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -49,4 +49,4 @@ project_configuration:
name: ds
time_granularity: day
custom_granularities:
- name: martian_day
- name: alien_day
Original file line number Diff line number Diff line change
Expand Up @@ -720,14 +720,14 @@ metric:
offset_window: 2 days
---
metric:
name: "bookings_offset_martian_day"
name: "bookings_offset_alien_day"
description: bookings metric offset by a martian day.
type: derived
type_params:
expr: 2 * bookings
metrics:
- name: bookings
offset_window: 1 martian_day
offset_window: 1 alien_day
---
metric:
name: bookings_at_start_of_month
Expand Down Expand Up @@ -861,23 +861,23 @@ metric:
alias: shared_alias
---
metric:
name: bookings_offset_one_martian_day
description: bookings offset by one martian_day
name: bookings_offset_one_alien_day
description: bookings offset by one alien_day
type: derived
type_params:
expr: bookings
metrics:
- name: bookings
offset_window: 1 martian_day
offset_window: 1 alien_day
---
metric:
name: bookings_martian_day_over_martian_day
name: bookings_alien_day_over_alien_day
description: bookings growth martian day over martian day
type: derived
type_params:
expr: bookings - bookings_offset / NULLIF(bookings_offset, 0)
metrics:
- name: bookings
offset_window: 1 martian_day
offset_window: 1 alien_day
alias: bookings_offset
- name: bookings
Original file line number Diff line number Diff line change
Expand Up @@ -132,3 +132,13 @@ metric:
measure:
name: archived_users
join_to_timespine: true
---
metric:
name: archived_users_offset_1_alien_day
description: archived_users offset by 1 alien_day
type: derived
type_params:
expr: archived_users
metrics:
- name: archived_users
offset_window: 1 alien_day
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ def test_custom_offset_window_for_metric(
simple_semantic_manifest_lookup: SemanticManifestLookup,
) -> None:
"""Test offset window with custom grain supplied."""
metric = simple_semantic_manifest_lookup.metric_lookup.get_metric(MetricReference("bookings_offset_martian_day"))
metric = simple_semantic_manifest_lookup.metric_lookup.get_metric(MetricReference("bookings_offset_alien_day"))

assert len(metric.input_metrics) == 1
assert metric.input_metrics[0].offset_window == PydanticMetricTimeWindow(count=1, granularity="martian_day")
assert metric.input_metrics[0].offset_window == PydanticMetricTimeWindow(count=1, granularity="alien_day")
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ test_name: test_available_group_by_items[no_metrics]
test_filename: test_available_group_by_items.py
---
[
"TimeDimension('metric_time', 'alien_day')",
"TimeDimension('metric_time', 'day')",
"TimeDimension('metric_time', 'hour')",
"TimeDimension('metric_time', 'martian_day')",
"TimeDimension('metric_time', 'microsecond')",
"TimeDimension('metric_time', 'millisecond')",
"TimeDimension('metric_time', 'minute')",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,14 +79,14 @@ docstring:
'listing__bookings_per_view',
'listing__capacity_latest',
'listing__country_latest',
'listing__created_at__alien_day',
'listing__created_at__day',
'listing__created_at__extract_day',
'listing__created_at__extract_dow',
'listing__created_at__extract_doy',
'listing__created_at__extract_month',
'listing__created_at__extract_quarter',
'listing__created_at__extract_year',
'listing__created_at__martian_day',
'listing__created_at__month',
'listing__created_at__quarter',
'listing__created_at__week',
Expand All @@ -98,14 +98,14 @@ docstring:
'listing__derived_shared_alias_2',
'listing__discrete_booking_value_p99',
'listing__double_counted_delayed_bookings',
'listing__ds__alien_day',
'listing__ds__day',
'listing__ds__extract_day',
'listing__ds__extract_dow',
'listing__ds__extract_doy',
'listing__ds__extract_month',
'listing__ds__extract_quarter',
'listing__ds__extract_year',
'listing__ds__martian_day',
'listing__ds__month',
'listing__ds__quarter',
'listing__ds__week',
Expand Down Expand Up @@ -137,14 +137,14 @@ docstring:
'listing__view__listing__views',
'listing__views',
'listing__views_times_booking_value',
'metric_time__alien_day',
'metric_time__day',
'metric_time__extract_day',
'metric_time__extract_dow',
'metric_time__extract_doy',
'metric_time__extract_month',
'metric_time__extract_quarter',
'metric_time__extract_year',
'metric_time__martian_day',
'metric_time__month',
'metric_time__quarter',
'metric_time__week',
Expand All @@ -155,6 +155,7 @@ docstring:
'user__account__user__total_account_balance_first_day',
'user__account__user__total_account_balance_first_day_of_month',
'user__active_listings',
'user__archived_at__alien_day',
'user__archived_at__day',
'user__archived_at__extract_day',
'user__archived_at__extract_dow',
Expand All @@ -163,13 +164,13 @@ docstring:
'user__archived_at__extract_quarter',
'user__archived_at__extract_year',
'user__archived_at__hour',
'user__archived_at__martian_day',
'user__archived_at__month',
'user__archived_at__quarter',
'user__archived_at__week',
'user__archived_at__year',
'user__archived_users',
'user__archived_users_join_to_time_spine',
'user__bio_added_ts__alien_day',
'user__bio_added_ts__day',
'user__bio_added_ts__extract_day',
'user__bio_added_ts__extract_dow',
Expand All @@ -178,7 +179,6 @@ docstring:
'user__bio_added_ts__extract_quarter',
'user__bio_added_ts__extract_year',
'user__bio_added_ts__hour',
'user__bio_added_ts__martian_day',
'user__bio_added_ts__minute',
'user__bio_added_ts__month',
'user__bio_added_ts__quarter',
Expand All @@ -187,51 +187,51 @@ docstring:
'user__bio_added_ts__year',
'user__company',
'user__company_name',
'user__created_at__alien_day',
'user__created_at__day',
'user__created_at__extract_day',
'user__created_at__extract_dow',
'user__created_at__extract_doy',
'user__created_at__extract_month',
'user__created_at__extract_quarter',
'user__created_at__extract_year',
'user__created_at__martian_day',
'user__created_at__month',
'user__created_at__quarter',
'user__created_at__week',
'user__created_at__year',
'user__current_account_balance_by_user',
'user__ds__alien_day',
'user__ds__day',
'user__ds__extract_day',
'user__ds__extract_dow',
'user__ds__extract_doy',
'user__ds__extract_month',
'user__ds__extract_quarter',
'user__ds__extract_year',
'user__ds__martian_day',
'user__ds__month',
'user__ds__quarter',
'user__ds__week',
'user__ds__year',
'user__ds_latest__alien_day',
'user__ds_latest__day',
'user__ds_latest__extract_day',
'user__ds_latest__extract_dow',
'user__ds_latest__extract_doy',
'user__ds_latest__extract_month',
'user__ds_latest__extract_quarter',
'user__ds_latest__extract_year',
'user__ds_latest__martian_day',
'user__ds_latest__month',
'user__ds_latest__quarter',
'user__ds_latest__week',
'user__ds_latest__year',
'user__ds_partitioned__alien_day',
'user__ds_partitioned__day',
'user__ds_partitioned__extract_day',
'user__ds_partitioned__extract_dow',
'user__ds_partitioned__extract_doy',
'user__ds_partitioned__extract_month',
'user__ds_partitioned__extract_quarter',
'user__ds_partitioned__extract_year',
'user__ds_partitioned__martian_day',
'user__ds_partitioned__month',
'user__ds_partitioned__quarter',
'user__ds_partitioned__week',
Expand All @@ -240,6 +240,7 @@ docstring:
'user__home_state_latest',
'user__identity_verifications',
'user__largest_listing',
'user__last_login_ts__alien_day',
'user__last_login_ts__day',
'user__last_login_ts__extract_day',
'user__last_login_ts__extract_dow',
Expand All @@ -248,12 +249,12 @@ docstring:
'user__last_login_ts__extract_quarter',
'user__last_login_ts__extract_year',
'user__last_login_ts__hour',
'user__last_login_ts__martian_day',
'user__last_login_ts__minute',
'user__last_login_ts__month',
'user__last_login_ts__quarter',
'user__last_login_ts__week',
'user__last_login_ts__year',
'user__last_profile_edit_ts__alien_day',
'user__last_profile_edit_ts__day',
'user__last_profile_edit_ts__extract_day',
'user__last_profile_edit_ts__extract_dow',
Expand All @@ -262,7 +263,6 @@ docstring:
'user__last_profile_edit_ts__extract_quarter',
'user__last_profile_edit_ts__extract_year',
'user__last_profile_edit_ts__hour',
'user__last_profile_edit_ts__martian_day',
'user__last_profile_edit_ts__millisecond',
'user__last_profile_edit_ts__minute',
'user__last_profile_edit_ts__month',
Expand Down
Loading