Skip to main content

MetricFlow time spine

Considerations when choosing which granularities to create

  • MetricFlow will use the time spine with the largest compatible granularity for a given query to ensure the most efficient query possible. For example, if you have a time spine at a monthly grain, and query a dimension at a monthly grain, MetricFlow will use the monthly time spine. If you only have a daily time spine, MetricFlow will use the daily time spine and date_trunc to month.
  • You can add a time spine for each granularity you intend to use if query efficiency is more important to you than configuration time, or storage constraints. For most engines, the query performance difference should be minimal and transforming your time spine to a coarser grain at query time shouldn't add significant overhead to your queries.
  • We recommend having a time spine at the finest grain used in any of your dimensions to avoid unexpected errors. For example, if you have dimensions at an daily grain, you should have a time spine at an daily grain.
  • If you're looking to specify the grain of a time dimension so that MetricFlow can transform the underlying column to the required granularity, refer to the dimensions page for the supported granularities.

Custom calendar Preview

0