文档中心MogDBMogDB StackUqbar

文档:v2.0

支持的版本:

数据删除

时序数据通常具有一定的时效性,数据操作基本集中在最新的数据上。用户可以通过配置数据保留策略,自动删除超过保留期限的数据。另外,用户也可以通过调用删除接口手动执行数据删除。


自动删除数据

在创建时序表的时候确定了时序表的数据保留策略,当时序表内数据所在的 chunkgroup 的右边界早于当前时间减去数据保留时长,系统会后台自动删除整个chunkgroup 内的数据。


手动删除数据

通过调用函数进行手动数据删除。

示例

SELECT * FROM timeseries_catalog.drop_ts_outdate_cg('weather', now());
SELECT * FROM timeseries_catalog.drop_ts_outdate_cg('public.weather', now()+ '1 h'::interval);
NOTICE:  timeseries table weather outdate boundary is 2022-10-31 12:58:01.641916+08
NOTICE:  chunkgroup 24773 boundary is 2022-07-27 04:00:00+08
NOTICE:  chunkgroup 24773 with boundary(2022-07-27 04:00:00+08) is out of date.
NOTICE:  drop chunkgroup 24773 of rel 24760
NOTICE:  chunkgroup 24780 boundary is 2025-10-18 09:00:00+08
NOTICE:  chunkgroup 24787 boundary is 2025-10-18 11:00:00+08
NOTICE:  chunkgroup 24794 boundary is 2025-10-18 12:00:00+08
NOTICE:  chunkgroup 24801 boundary is 2030-07-28 06:00:00+08

手动删除函数的第一个参数用于指定时序表,第二个参数指定触发数据删除的时间。调用过期删除函数,会立即触发一次自动删除动作,自动删除以函数的第二个参数作为当前系统时间进行数据过期检查。

函数执行时会输出提示信息展示时序表每个chunkgroup的过期边界,还会输出信息展示被删除的chunkgroup信息。

如果时序表中数据设置的保留策略是永久保留,无法通过调用删除函数进行手动删除。

Copyright © 2011-2024 www.enmotech.com All rights reserved.