DataJunction / dj

A metrics platform.

Home Page:http://datajunction.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Support Aggregated Cube Materialization

shangyian opened this issue · comments

commented

When we materialize cubes, we should offer two types of materialization:

  • Measures
  • Aggregated (i.e., with aggregated metrics)

Measures Cubes

Measures cube materialization supports the use case where users want to arbitrarily assemble metrics, potentially aggregated at different grains.

Agg Cubes

Aggregated cube materialization supports the use case where there is a specific grain of dimensions for the cube that the metrics are aggregated at, with the potential to aggregate further but without the possibility of more granular metrics.

Temporal Info

For Druid cubes the following pieces of temporal information are needed:

  • Primary timestamp column
  • Temporal partition column (only needed for INCREMENTAL_TIME loads), with a timestamp format

In some cases, the event timestamp column and the time unit partition column may be the same column. For example, an INCREMENTAL_TIME materialization could have a single event_date partition, which is also serves as the primary timestamp column, with format yyyyMMdd. However, it is also possible for the cube to have an event_ts column set as the primary timestamp, with event_date as its partition.