- Experiment enrollment data
- Experiment search metrics data
- Derived tables
- GCS data export
- Code reference
Experiment monitoring datasets are designed to power dashboards, such as Experiment Enrollment Grafana dashboard, for monitoring experiments in real time. Currently, datasets for monitoring the number or enrollments and number of searches performed by clients enrolled in experiments are available.
moz-fx-data-shared-prod.telemetry_derived.experiment_enrollment_aggregates_live provides enrollment, unenrollment, graduate, update and failure aggregates for experiments and branches over 5-minute intervals. This live view is also the basis of several derived tables:
|Overall number of clients that unenrolled from experiments|
|Number of events other than |
|Cumulative number of clients enrolled in experiments|
|Overall number of clients enrolled in experiments|
|Number of daily active clients enrolled in experiments|
moz-fx-data-shared-prod.telemetry_derived.experiment_search_aggregates_live_v1 provides aggregated search metrics of clients enrolled in experiments, such as the number of searches performed, the number of searches with ads and the number of ad clicks. This live view is also the basis of several derived tables:
|Cumulative number of ad clicks by clients enrolled in experiments|
|Cumulative number of searches by clients enrolled in experiments|
|Cumulative number of searches with ads by clients enrolled in experiments|
Derived tables all have the same schema:
|Timestamp when value was recorded|
As an example of how these derived tables can be used, the following query determines the number of cumulative clients enrolled
in a the
multi-stage-aboutwelcome-set-default-as-first-screen experiment to date in each branch of a study:
SELECT branch, SUM(value) AS total_enrolled FROM `mozdata.telemetry.experiment_enrollment_cumulative_population_estimate` WHERE experiment = 'multi-stage-aboutwelcome-set-default-as-first-screen' GROUP BY 1 ORDER BY 2
As some dashboard solutions, such as the Experimenter console, might not have access to BigQuery, data from derived experiment monitoring tables is also exported as JSON to
monitoring/ in the
mozanalysis bucket in
moz-fx-data-experiments. JSON files are named like:
<experiment_slug>_<monitoring_dataset_name>.json, for example:
A script for exporting this data is scheduled to run via Airflow every 5 minutes.
To keep cost low for populating the monitoring live tables, several jobs have been set up for each enrollments and search metrics monitoring live tables:
- Hourly jobs that materialize data from the live tables from the past hour and write it to the hourly-partitioned
telemetry_derived.experiment_search_aggregates_hourly_v1tables. The jobs are scheduled with some lag (30 minutes) to account for BigQuery sink delays.
- Daily jobs for updating
telemetry_derived.experiment_search_aggregates_v1to finalize numbers from the stable tables.
- Jobs scheduled to run every 5 minutes that dump experiment enrollment aggregates and experiment search metrics aggregates that are very recent and have not been processed by the hourly job yet into
The tables derived from the experiment monitoring live tables are also scheduled to run every 5 minutes together with the data export script.
moz-fx-data-shared-prod.telemetry_derived.experiment_enrollment_aggregates_live and derived datasets are part of bigquery-etl:
moz-fx-data-shared-prod.telemetry_derived.experiment_search_aggregates_live_v1 and derived datasets are part of bigquery-etl: