influxdb - 删除属于特定保留策略的度量
问题描述
最近,我们将我们的数据从使用保留策略 autogen(默认)的测量“用户”迁移到保留策略六十天 (sixty_days.users)。所以我们不再需要 autogen.users 中的数据。
我们如何在不损害 Sixty_days.users 中的数据的情况下删除它?
这是一个奇怪的行为,因为当我们将数据插入到 Sixty_days.users 时 - 它没有应用于 autogen.users,但是当我们尝试删除/删除时 - 它会从它们两者中删除它。
我们尝试按时间使用 DROP 和 DELETE,但没有成功。
我们希望仅删除属于特定 RT 的测量中的数据。
解决方案
正如 Nikolay Manolov 在他的回答中提到的那样,您不能将保留策略指定为 DELETE OR DROP 命令的一部分。但我们真的需要它吗?
经过测试我确认,您的问题与使用相同的测量名称以及不同的保留策略有关。因此,更好的破解方法可能是使用“用户”以外的临时测量名称,直到您使用默认保留策略删除旧副本。
select * into "sixty_days".temp_user from "autogen".user group by *;
delete from user;
select * into "sixty_days".user from "sixty_days".temp_user group by *;
delete temp_user;
您需要将 by 子句作为上述查询的一部分进行分组,以避免默认情况下将标签转换为字段。
推荐阅读
- spring-boot - 如何将静态密钥库替换为 spring-boot-application 的动态密钥库
- r - 如何使用 mutate_at 将 sw_glance 应用于嵌套的时间序列数据帧?
- python - 将张量分配给多个切片
- python - 如何格式化带有千位分隔符和括号中的负数的数据透视表数字?
- r - 更改 ggplot2 中的图例标签
- microk8s - microk8s.enable dns 卡在 ContainerCreating
- arrays - 在 Nim 中定义空数组的问题
- assembly - 如果文件在 gnu 中太大,则组装失败
- msbuild - 为什么 ninja build 和 msbuild 不能使用超过大约 50%?
- javascript - .click() 函数不让控件进入函数体