Hello TimescaleDB team,
May I know what are the differences between materialization_threshold
and watermark
? These terms seem to be describing about the same thing where data inserted after the threshold/watermark is deemed to be unmaterialized, and all data before threshold/watermark is materialized, at least this is what I understand from reading these two articles:
- Postgres Materialized Views, The Timescale Way
- Continuous aggregates: automatically maintained materialized views
Is this just a rename?
I also see that in _timescaledb_catalog
, there are tables called continuous_aggs_watermark
and continuous_aggs_invalidation_threshold
, where both tables have column watermark
. I see that in continuous_aggs_watermark
its referring to the materialized hypertable, while continuous_aggs_invalidation_threshold
refers to the hypertable itself. May I know why is continuous_aggs_invalidation_threshold
needed and why does hypertables need a watermark? I would imagine only materialized tables for continuous aggregates would need a watermark.
Would appreciate some insights and clarifications on this as I’ve yet to find any resources online that explains this.