Influxdb时序数据库 数据保存策略

本文详细介绍了InfluxDB的数据保留策略(RP),包括其目的、操作方法,如查看、新建、修改和删除策略。数据保留策略用于定义数据在InfluxDB中的存储时间和可删除条件,以控制数据量并提高查询效率。此外,还强调了在非默认策略下操作时需指定策略名称的重要性。

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

一. InfluxDB 数据保留策略说明

InfluxDB的数据保留策略(RP)用来定义数据在InfluxDB中存放的时间,或者定义保存某个期间的数据.

一个数据库可以有多个保留策略, 但每个策略必须是独一无二的.

二. InfluxDB数据保留策略目的

InfluxDB本身不提供数据的删除操作, 因此用来控制数据量的方式就是定义数据保留策略.

因此定义数据保留策略的目的是让InfluxDB能够知道可以丢弃哪些数据, 从而更高效的处理数据.

三. InfluxDb数据保留策略 操作

  1. 查询策略

    可以通过如下语句查看数据库的现有策略:

    show retention policies on telegraf
    
    namedurationshardGroupDurationreplicaNdefault
    default0168h0m0s1true

    可以看到telegraf只有一个策略, 个字段的含义如下:

    • name 名称, 此示例名称为default
    • duration 持续时间, 0代表无限制
    • shardGroupDuration shardGroup的存储时间, shardGroup是InfluxDB的一个基本存储结构, 应该大于这个时间的数据在查询效率上应该有所降低.
    • replicaN 全称是REPLICATION, 副本个数
    • default 是否是默认策略
  2. 新建策略

    CREATE RETENTION POLICY "2_hours" ON "telegraf" DURATION 2h REPLICATION 1 DEFAULT
    

    通过上面的语句可以添加策略, 本例在telegraf库添加了一个2小时的策略, 名字叫做2_hours,duration为2小时, 副本为1, 设置为默认策略.

    因为名为default的策略不再是默认策略, 因此, 在查询使用default策略的表时要显示的加上策略名"defalut"

    select * from "default".cpu limit 2
    
  3. 修改策略

    修改策略使用如下语句修改

    ALTER RETENTION POLICY "2_hours" ON "telegraf" DURATION 4h DEFAULT
    
  4. 删除策略

    drop retention POLICY "2_HOURS" ON "telegraf"
    

四. 其他说明

策略这个关键词"POLICY"在使用时应该大写,小写应该会出错.

当一个表使用的策略不是默认策略时, 在进行操作时一定要显示的指定策略名称, 否则会出现错误.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值