TimescaleDB - 获取保留策略和 chunk_time_interval table
TimescaleDB - get retention policy and chunk_time_interval for a table
给定一个超级table
SELECT create_hypertable('conditions', 'time', chunk_time_interval => INTERVAL '1 day');
SELECT add_retention_policy('conditions', INTERVAL '6 months');
在 TimescaleDB 中,如何使用 select 语句检索两个间隔(chunk_time_interval
和保留策略间隔)的长度,提供 table 名称?
您可以通过作业视图获取有关保留策略的信息:
SELECT schedule_interval, config FROM timescaledb_information.jobs
WHERE hypertable_name = 'conditions'
AND timescaledb_information.jobs.proc_name = 'policy_retention';
输出将是这样的:
┌───────────────────┬───────────────────────────────────────────────┐
│ schedule_interval │ config │
├───────────────────┼───────────────────────────────────────────────┤
│ 1 day │ {"drop_after": "6 mons", "hypertable_id": 26} │
└───────────────────┴───────────────────────────────────────────────┘
要获取超表,您可以从 dimensions
视图获取信息:
select time_interval from timescaledb_information.dimensions where hypertable_name = 'conditions';
┌───────────────┐
│ time_interval │
├───────────────┤
│ 1 day │
└───────────────┘
(1 row)
给定一个超级table
SELECT create_hypertable('conditions', 'time', chunk_time_interval => INTERVAL '1 day');
SELECT add_retention_policy('conditions', INTERVAL '6 months');
在 TimescaleDB 中,如何使用 select 语句检索两个间隔(chunk_time_interval
和保留策略间隔)的长度,提供 table 名称?
您可以通过作业视图获取有关保留策略的信息:
SELECT schedule_interval, config FROM timescaledb_information.jobs
WHERE hypertable_name = 'conditions'
AND timescaledb_information.jobs.proc_name = 'policy_retention';
输出将是这样的:
┌───────────────────┬───────────────────────────────────────────────┐
│ schedule_interval │ config │
├───────────────────┼───────────────────────────────────────────────┤
│ 1 day │ {"drop_after": "6 mons", "hypertable_id": 26} │
└───────────────────┴───────────────────────────────────────────────┘
要获取超表,您可以从 dimensions
视图获取信息:
select time_interval from timescaledb_information.dimensions where hypertable_name = 'conditions';
┌───────────────┐
│ time_interval │
├───────────────┤
│ 1 day │
└───────────────┘
(1 row)