Influx Sql系列教程二:retention policy 保存策略
retention policy这个东西相比较于传统的关系型数据库(比如mysql)而言,是一个比较新的东西,在将表之前,有必要来看一下保存策略有什么用,以及可以怎么用
I. 基本操作
1. 创建retention policy
retention policy依托于database存在,也就是说保存策略创建时,需要指定具体的数据库,语法如下
CREATE RETENTION POLICY <retention_policy_name> ON <database_name> DURATION <duration> REPLICATION <n> [SHARD DURATION <duration>] [DEFAULT]
创建语句中,有几个地方需要额外注意一下
retention_policy_name: 策略名(自定义的)database_name: 一个必须存在的数据库名duration: 定义的数据保存时间,最低为1h,如果设置为0,表示数据持久不失效(默认的策略就是这样的)REPLICATION: 定义每个point保存的副本数,默认为1default: 表示将这个创建的保存策略设置为默认的
下面是一个实际的case,创建一个数据保存一年的策略
create retention policy "1Y" on test duration 366d replication 1
2. 策略查看
上面演示的case中,已经有如何查看一个数据库的保存策略了
show retention policies on <database name>
3. 修改保存策略
修改一个已经存在的保存策略,语法如下
ALTER RETENTION POLICY <retention_policy_name> ON <database_name> DURATION <duration> REPLICATION <n> SHARD DURATION <duration> DEFAULT
上面的定义和前面创建基本一致,下面给出一个case
4. 删除保存策略
DROP RETENTION POLICY <retention_policy_name> ON <database_name>
当如下面的case,删除了默认的策略之后,会发现居然没有了默认的保存策略了,这个时候可能需要注意下,手动指定一个
II. 进阶说明
前面虽然介绍了保存策略的增删改查,但是这个东西究竟有什么用,又可以怎么用呢?
看一下前面查看保存策略的图
从前面的查看,可以看到保存策略主要有三个关键信息,数据保存时间,数据分片时间,副本数
1. 保存时间
duration 这一列,表示的就是这个策略定义的数据保存时间
因为我们知道每条记录都有一个time表明这条记录的时间戳,如果当前时间与这条记录的time之间差值,大于duration,那么这条数据就会被删除掉
注意
默认的保存策略autogen中的duraiton=0,这里表示这条数据不会被删除
2. 分片时间
简单理解为每个分片的时间跨度,比如上面的1_d这个策略中,数据保存最近24小时的,每个小时一个分组
我们在创建数据策略的时候,大多时候都没有指定这个值,系统给出的方案如下
| Retention Policy’s DURATION | Shard Group Duration |
|---|---|
| < 2 days | 1 hour |
| >= 2 days and <= 6 months | 1 day |
| > 6 months | 7 days |
3. 副本
副本这个指定了数据有多少个独立的备份存在
4. 场景说明
了解上面的几个参数之后,可以预见保存策略有个好的地方在于删除过期数据,比如使用influx来存日志,我只希望查看最近一个月的数据,这个时候指定一个duration时间为30天的保存策略,然后添加数据时,指定这个保存策略,就不需要自己来关心日志删除的问题了
II. 其他
0. 系列博文
- 190718-Influx Sql系列教程一:database 数据库
- 190717-Influx Sql系列教程零:安装及influx-cli使用姿势介绍
- 190509-InfluxDb之时间戳显示为日期格式
- 190506-InfluxDB之配置修改
- 190505-InfluxDB之权限管理
- 180727-时序数据库InfluxDB之备份和恢复策略
- 180726-InfluxDB基本概念小结
- 180725-InfluxDB-v1.6.0安装和简单使用小结
参考博文
1. 一灰灰Blog: https://liuyueyi.github.io/hexblog
一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛
2. 声明
尽信书则不如,已上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激
- 微博地址: 小灰灰Blog
- QQ: 一灰灰/3302797840
3. 扫描关注
一灰灰blog
Influx Sql系列教程二:retention policy 保存策略的更多相关文章
- Influx Sql系列教程九:query数据查询基本篇二
前面一篇介绍了influxdb中基本的查询操作,在结尾处提到了如果我们希望对查询的结果进行分组,排序,分页时,应该怎么操作,接下来我们看一下上面几个场景的支持 在开始本文之前,建议先阅读上篇博文: 1 ...
- Influx Sql系列教程八:query数据查询基本篇
前面几篇介绍了InfluxDB的添加,删除修改数据,接下来进入查询篇,掌握一定的SQL知识对于理解本篇博文有更好的帮助,下面在介绍查询的基础操作的同时,也会给出InfluxSql与SQL之间的一些差别 ...
- Influx Sql系列教程七:delete 删除数据
前面介绍了使用insert实现新增和修改记录的使用姿势,接下来我们看一下另外一个简单的使用方式,如何删除数据 1. delete 语句 delete的官方语法如下 DELETE FROM <me ...
- Influx Sql系列教程六:insert 修改数据
在influxdb中没有专门的修改数据的update语句,对于influxdb而言,如果想修改数据,还是得使用我们前面的说到的insert来实现,那么怎么判断一条insert语句是插入还是修改呢? 1 ...
- Influx Sql系列教程五:insert 添加数据
接下来开始进入influxdb的curd篇,首先我们看一下如何添加数据,也就是insert的使用姿势 在进入本篇之前,对于不了解什么是retention policy, tag, field的同学,有 ...
- Influx Sql系列教程四:series/point/tag/field
influxdb中的一条记录point,主要可以分为三类,必须存在的time(时间),string类型的tag,以及其他成员field:而series则是一个measurement中保存策略和tag集 ...
- Influx Sql系列教程三:measurement 表
在influxdb中measurement相当于mysql中的表,可以理解为一条一条记录都是存与measurent中的,一个数据库中可以有多个measurement,一个measurement中可以存 ...
- Influx Sql系列教程零:安装及influx-cli使用姿势介绍
influxdb 时序数据库,因为实际业务中使用到了,然而并没有发现有特别好的文章,完整的介绍influx sql的使用姿势,因此记录下实际开发中学习的体会,主要参考来自于官方文档 Influx Qu ...
- CRL快速开发框架系列教程二(基于Lambda表达式查询)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
随机推荐
- django-使用类视图
视图函数views.py中 from django.shortcuts import render, redirect from django.http import HttpResponse, Js ...
- PJ8搜索
1,P1036 2,枚举子集 3,P1378 我觉得先需要一个排列,而且是n中取n的那种. 然后按照每个顺序进行模拟扩展,得出最大面积(体积?) 最后就更新最大值没什么说的. 1,啥是搜索,主要是一个 ...
- cjss 像编写css 一样开发web应用
cjss 提供了使用类似css 的方式编写web 应用 cjss 包含的阶段 data prepare body element 几点说明 并不是所以阶段必须使用,但是每个级别只能存在一个script ...
- HAProxy 2.0 and Beyond
转自:https://www.haproxy.com/blog/haproxy-2-0-and-beyond/ 关于haproxy 2.0 的新特性说明 HAProxy Technologies i ...
- Codevs 2800 送外卖(状压DP)
2800 送外卖 时间限制: 2 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题目描述 Description 有一个送外卖的,他手上有n份订单,他要把n份东西,分别送达n ...
- 分类模型的性能评价指标(Classification Model Performance Evaluation Metric)
二分类模型的预测结果分为四种情况(正类为1,反类为0): TP(True Positive):预测为正类,且预测正确(真实为1,预测也为1) FP(False Positive):预测为正类,但预测错 ...
- 【loj2985】【WC2019】I君的商店
题目 交互题: 有\(n\)个物品,每个物品的价格为0或者1; 给出为1的物品的个数奇偶性k,并保证至少有一个价格为1: 每次可以询问一个集合S的另一个集合T的价值和的大小,交互库会返回>=或者 ...
- 【00NOIP普及组】计算器的改良(信息学奥赛一本通 1910)(洛谷 1022)
[题目描述] NCL是一家专门从事计算器改良与升级的实验室,最近该实验室收到了某公司所委托的一个任务:需要在该公司某型号的计算器上加上解一元一次方程的功能.实验室将这个任务交给了一个刚进入的新手ZL先 ...
- fillter根据value来匹配字段
字段对应 let cashBackState = { 'WAIT_FIVE': '满5单可返现', 'FINISHED': '已返现' } filters: { cashBackStateFilter ...
- sparkUI
sparkUI 源码: https://www.cnblogs.com/barrenlake/p/4364644.html 页面介绍: https://blog.csdn.net/qq_2763977 ...