influxdb基础(四)——influxdb保留策略(retention policy)自动清理过期数据

本文介绍了InfluxDB的保留策略(Retention Policy, RP)设置,包括创建不同数据保留时长的RP,修改RP的保留时长和副本数,设置默认RP,以及删除RP。通过示例展示了如何指定RP写入和查询数据,强调了在操作过程中需要注意的细节和常见错误。" 73230412,6804359,使用批处理命令自动运行Grasshopper,"['批处理', 'Rhinoceros', 'Grasshopper']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • retention_policy_name: 策略名。

  • database_name: 数据库名(db必须存在)。

  • duration: 数据保留时长。

  • REPLICATION: 复制因子,单机版设置为1即可。

  • SHARD DURATION:设置shardGroupDuration时长,表示每个shard group时间跨度时长。可不填,默认根据RP的duration计算。

  • default: true为设置该RP为默认RP。

示例:

为monitor库创建一个数据保留时长30天的rp,同时设置shard duration为1d,副本为1,并设置为默认rp

create retention policy rp_30_days on monitor duration 30d replication 1 shard duration 1d default

为monitor库创建一个数据保留时长一个星期的rp,副本为1

create retention policy rp_one_week on monitor duration 1w replication 1

create rp

修改retention policy


基本语法:

ALTER RETENTION POLICY <retention_policy_name> ON <database_name> DURATION REPLICATION [SHARD DURATION ] [DEFAULT]

ALTER可修改的部分有duration、replication、shard duration、default,修改时无需每个属性都写上,可修改哪个写哪个。

示例:

修改rp_1_week 保留数据时长为15days

alter retention policy rp_1_week on monitor duration 15d replication 1 default

设置rp_30_days为默认rp

alter retention policy rp_30_days on monitor default

设置某个RP为默认RP时,旧默认RP会自动改为非默认RP

retention policy不能修改RP名称,如果自主命名的RP名称和修改后的duration不匹配,还不如把旧RP删除,新建一个RP。

删除retention policy


基本语法:

DROP RETENTION POLICY <retention_policy_name> ON <database_name>

示例:

删除名为rp_1_week的rp

drop retention policy rp_1_week on monitor

注:durationshard duration取值,1h(1小时)、1d(1天)、1w(1周)。

写数据指定retention policy

========================================================================================

当一个数据库有多个retention policy,写数据时,如不想默认RP,可指定其他RP。如,monitor库有两个RP,一个是默认RP保留数据30天,一个保留数据3天,现写入数据指定RP为3天那个。

在没有use 哪个db的时候需要指定db,选择monitor数据库,指定rp为rp_3_days写入数据到service_qps

insert into monitor.rp_3_days service_qps,svrName=TaskSvr,hostName=dev4 qps=12.9

切换选择monitor

use monitor

并指定rp为rp_3_days写入数据到service_qps

insert into rp_3_days service_qps,svrName=TaskSvr,hostName=dev4 qps=12.9

写数据指定数据库或者RP时,需要使用insert into。默认db和默认RP写数据使用insert

查数据指定retention policy

========================================================================================

既然写数据时指定了非默认RP,查数据时也必须指定RP。

默认指定默认RP

select * from service_qps

指定RP查询

select * from rp_3_days.service_qps

指定RP查询需要注意:因为select语法是select * from RP.MEASUREMENT,所以千万不要使用如下语句写数据:

完全错误的写法

insert rp_3_days.service_qps,svrName=TaskSvr,hostName=dev4 qps=12.9

使用insert写数据时,以为指定了RP,实则是写数据到名为rp_3_days.service_qpsmeasurement中,当想查measurement名为rp_3_days.service_qps数据时会和RP为rp_3_daysmeasurementservice_qps产生语法冲突。

series=measurement +tags set+retention policy

================================================================================================================

seriesmeasurement +tags set + retention policy 组成的数据集合。同个 database中,retention policymeasurementtags set完全相同的数据同属于一个 series,同个series的数据在物理上会按照时间顺序排列存储在一起。serieskeymeasurement + 所有 tags组成的字符串。

show series

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

本次面试答案,以及收集到的大厂必问面试题分享:

字节跳动超高难度三面java程序员面经,大厂的面试都这么变态吗?

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!
images/e5c14a7895254671a72faed303032d36.jpg" alt=“img” style=“zoom: 33%;” />

本次面试答案,以及收集到的大厂必问面试题分享:

[外链图片转存中…(img-Pm2EKIyw-1711979468129)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值