我有一个由其他人创建的Timescale数据库。
create_hypertable
?目前我使用此方法,但必须有一种更好的方法:
SELECT * FROM hypertable_relation_size('public.data');
create_hypertable
,则在调用create_hypertable
时使用了哪些参数(包括chunk_time_interval)?(在某些情况下,有一个from_date和to_date)
答案 0 :(得分:1)
TimescaleDB维护有关超表的元数据,并提供视图以查询元数据。视图位于模式timescaledb_information
中,可以从timescaledb_information.hypertable
检索有关超表的信息。
例如:
SELECT * FROM timescaledb_information.hypertable WHERE table_name = 'data';
This API doc包含更多信息和示例。
请注意,时间块间隔可以随时间更改,因此视图不提供有关它的信息。因此,有必要检查每个块以查看其间隔。这可以通过调用文档here中描述的函数chunk_relation_size_pretty
来完成。例如:
SELECT chunk_table, partitioning_columns, ranges
FROM chunk_relation_size_pretty('data');
如果您在另一个模式中,则必须指定超级表的完全限定名称,因为它需要一个标识符:
SET SCHEMA 'test';
SELECT chunk_table, partitioning_columns, ranges
FROM public.chunk_relation_size_pretty('public.data');