1

拥有几百万行的超表。我可以使用以下方法选择它的大小:

SELECT pg_size_pretty( pg_total_relation_size('towns') );

我也有该超表的连续聚合:

WITH (timescaledb.continuous, timescaledb.materialized_only=true) AS
SELECT time_bucket(INTERVAL '1 minute', timestamp) AS bucket,
 /* random query */
FROM towns
GROUP BY bucket, town
WITH NO DATA;

我刷新了视图,数据按预期显示。但是,我似乎无法弄清楚这个新视图占用了多少空间。

SELECT pg_size_pretty( pg_total_relation_size('towns_income') );返回 0 个字节,我知道这是不正确的。我认为total_relation_sizetowns可能会增加,但这似乎也是一样的。我错过了什么吗?我也尝试过hypertable_size但没有成功,因为 mv 在技术上不是超表。

4

1 回答 1

4

以下 SQL 可以提供帮助:)

 SELECT view_name, hypertable_size(format('%I.%I', materialization_hypertable_schema , materialization_hypertable_name )::regclass)
  FROM timescaledb_information.continuous_aggregates;
于 2021-08-04T14:29:42.427 回答