dbt Semantic Layer updates and fixes for February 2024
The dbt Labs team continues to work on adding new features, fixing bugs, and increasing reliability for the dbt Semantic Layer and MetricFlow.
The following list explains the new features, updates, and fixes for February 2024 in more detail.
dbt Semantic Layer
New features
- Use exports to materialize saved queries — Exports allow you to materialize a saved query as a table or view in your data platform. By using exports, you can unify metric definitions in your data platform and query them as you would any other table or view.
- New export capabilities — You can access a list of your exports with the new list saved-queries command by adding
--show-exports
- Relative date filters in Tableau — The dbt Semantic Layer and Tableau Connector now supports relative date filters in Tableau.
Updates
- Google Sheets integration — The dbt Semantic Layer Google Sheets integration now exposes a note on the cell where the data was requested, indicating clearer data requests. The integration also now exposes a new Time Range option, which allows you to quickly select date ranges.
- GraphQL API enhancements — The GraphQL API includes a
requiresMetricTime
parameter to better handle metrics that must be grouped by time. (Certain metrics defined in MetricFlow can't be looked at without a time dimension).
Bug fixes
- Date filter with Tableau Connector — The Tableau Connector returns a date filter when filtering by dates. Previously it was erroneously returning a timestamp filter.
MetricFlow
Updates
- Metric querying — Enable querying metrics with offset and cumulative metrics with the time dimension name, instead of
metric_time
. Issue #1000- Enable querying
metric_time
without metrics. Issue #928
- Enable querying
- SQL generation — Added support for consistent SQL query generation, which enables ID generation consistency between otherwise identical MF queries. Previously, the SQL generated by
MetricFlowEngine
was not completely consistent between identical queries. Issue 1020
Bug fixes
- Query parameter validation — MetricFlow now validates if there are
metrics
,group by
, orsaved_query
items in each query. Previously, there was no validation. Issue 1002 - Enhanced filtering for time spine joins — Measures using
join_to_timespine
in MetricFlow now have filters applied correctly after time spine join. - Querying multiple granularities with offset metrics:
- If you query a time offset metric with multiple instances of
metric_time
/agg_time_dimension
, only one of the instances will be offset. All of them should be. - If you query a time offset metric with one instance of
metric_time
/agg_time_dimension
but filter by a different one, the query will fail.
- If you query a time offset metric with multiple instances of
- Join type selection — MetricFlow prioritizes a candidate join type over the default type when evaluating nodes to join. For example, the default join type for distinct values queries is
FULL OUTER JOIN
, however, time spine joins requireCROSS JOIN
, which is more appropriate. - Entity reference error in filter — Fixed a bug that previously caused errors when entities were referenced in
where
filters.
Dependencies
0