Automatically drop data once its time value ages past a certain interval. When you create a data retention policy, Timescale automatically schedules a background job to drop old chunks.
Add a data retention policy by using the
add_retention_policy
function.
Choose which hypertable you want to add the policy to. Decide how long you want to keep data before dropping it. In this example, the hypertable named
conditions
retains the data for 24 hours.Call
add_retention_policy
:SELECT add_retention_policy('conditions', INTERVAL '24 hours');
Note
A data retention policy only allows you to drop chunks based on how far they are in the past. To drop chunks based on how far they are in the future, manually drop chunks.
Remove an existing data retention policy by using the
remove_retention_policy
function. Pass it the name
of the hypertable to remove the policy from.
SELECT remove_retention_policy('conditions');
To see your scheduled data retention jobs and their job statistics, query the
timescaledb_information.jobs
and
timescaledb_information.job_stats
tables.
For example:
SELECT j.hypertable_name,j.job_id,config,schedule_interval,job_status,last_run_status,last_run_started_at,js.next_start,total_runs,total_successes,total_failuresFROM timescaledb_information.jobs jJOIN timescaledb_information.job_stats jsON j.job_id = js.job_idWHERE j.proc_name = 'policy_retention';
The results look like this:
-[ RECORD 1 ]-------+-----------------------------------------------hypertable_name | conditionsjob_id | 1000config | {"drop_after": "5 years", "hypertable_id": 14}schedule_interval | 1 dayjob_status | Scheduledlast_run_status | Successlast_run_started_at | 2022-05-19 16:15:11.200109+00next_start | 2022-05-20 16:15:11.243531+00total_runs | 1total_successes | 1total_failures | 0
Keywords
Found an issue on this page?Report an issue or Edit this page in GitHub.