influxdb学习记录
文章目录
- 一、时序数据库介绍
- 1.1 时序数据
- 1.2 时序数据与关系型数据差异
- 1.3 时序数据库
- 1.4 时序数据库特征
- 1.4.1 写入特征
- 1.4.2 数据查询和分析的特点
- 1.4.3 数据存储的特点
- 二、安装influxdb以及基本操作、命令
- 三、influxdb studio可视化界面
- 四、influxdb常见问题
- 五、InfluxDb中的数学运算
- 数学运算符
- 1.1 查询中的基本计算
- 1.2 计算查询中的百分比
- InfluxDb中的函数
- InfluxDb中的数据查询语法Group子句
- 1.GROUP BY tags
- 2.GROUP BY时间间隔
- 六、influxdb中的增删改查
- InfluxDb中的数据查询语法
- InfluxDb中的数据插入语法
- InfluxDb中的数据删除语法
- 七、springboot连接influxdb完成增删查
一、时序数据库介绍
1.1 时序数据
把按照时间戳的大小顺序排列的一系列记录值的数据称为时间序列数据(Time Series Data)。比如,汽车的位置定位,在一段时间内某辆特定汽车的其他属性,包括型号、颜色、车牌号、所有者等都是不变的,但它的位置数据是随着时间变化不断在变化的,那么根据时间确定的位置值及其他属性所组成的一系列数据就是一组时序数据,当我们驾驶汽车开启导航时,就需要根据这一组时序数据判断接下来到达目的地的路线以及存储驾驶记录,在即将到来的无人驾驶中更是必不可少的。
1.2 时序数据与关系型数据差异
- 最明显的特征是时序数据都存在唯一的时间戳,并且以时间戳大小进行排序,以时间戳作为唯一标识进行区分,而关系型数据通常有其他字段作为标识,比如学生的数据通常使用学号作为唯一标识进行区分。
- 时序数据并不关心关系,在汽车定位中,我们不需要了解这辆汽车的所有者的其他属性,例如年龄、职业等等,也就不存在对汽车所有者的表的关联。
- 时序数据的数据量持续呈线性增长,每隔一定时间粒度就会产生新的数据,将会持续产生海量数据,因此数据量庞大。而关系型数据的增长通常不是随着时间持续增长的,比如一所学校的学生数据量在一段时间内都是相对稳定的。
- 时序数据很少会有更新操作,在某个时刻的测量值产生将不会发生变化,所以几乎不需要对时序数据进行更新。对于关系型数据,则是已存在的数据经常发生更新,比如学生的个人信息,包括年龄、身高等属性。
1.3 时序数据库
时序数据库全称为时间序列数据库。时间序列数据库指主要用于处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。 ----百度百科
1.4 时序数据库特征
1.4.1 写入特征
- 写入平稳、持续、高并发高吞吐:时序数据的写入是比较平稳的,这点与应用数据不同,应用数据通常与应用的访问量成正比,而应用的访问量通常存在波峰波谷。时序数据的产生通常是以一个固定的时间频率产生,不会受其他因素的制约,其数据生成的速度是相对比较平稳的。
- 写多读少:时序数据上95%-99%的操作都是写操作,是典型的写多读少的数据。这与其数据特性相关,例如监控数据,你的监控项可能很多,但是你真正去读的可能比较少,通常只会关心几个特定的关键指标或者在特定的场景下才会去读数据。
- 数据写入无更新:在时间这个维度上,随着时间的推进,每次数据都是新数据,不会存在旧数据的更新,不过不排除人为的对数据做订正。
1.4.2 数据查询和分析的特点
- 按时间范围读取:通常来说,你不会去关心某个特定点的数据,而是一段时间的数据。
- 最近的数据被读取的概率高
- 历史数据粗粒度查询的概率搞
1.4.3 数据存储的特点
- 数据量大:拿监控数据来举例,如果我们采集的监控数据的时间间隔是1s,那一个监控项每天会产生86400个数据点,若有10000个监控项,则一天就会产生864000000个数据点。在物联网场景下,这个数字会更大。整个数据的规模,是TB甚至是PB级的。
- 冷热分明:时序数据有非常典型的冷热特征,越是历史的数据,被查询和分析的概率越低。
- 具有时效性:时序数据具有时效性,数据通常会有一个保存周期,超过这个保存周期的数据可以认为是失效的,可以被回收。一方面是因为越是历史的数据,可利用的价值越低;另一方面是为了节省存储成本,低价值的数据可以被清理。
二、安装influxdb以及基本操作、命令
influxdb在一些语法方面也和mysql非常类似:
# 查看所有数据库
show databases
# 建库
create database dbname
# 删库
drop database daname
# 切换使用数据库
use dbname
# 查看所有表
show measurements
# 建表+插入数据,无需单独建表,插入数据的同时建表
insert xxx,tag1=1,tag2=www.aaa.com,tag3=2 field1=12i,field2="hhh",field=true
# 删表
drop measurement xxx
#简单查询
select * from xxx where tag1='1' and field2='hhh'
64bit:
influxdb学习记录相关推荐
- 4_InfluxDB学习之InfluxDB的基本概念、InfluxDB中独有的概念(Point,series),InfluxDB学习之InfluxDB的基本操作,InfluxDB操作方式,crud
4.InfluxDB学习之InfluxDB的基本概念 4.1.与传统数据库中的名词做比较 4.2.InfluxDB中独有的概念 4.2.1.Point 4.2.2.series 4.3.InfluxD ...
- Pytorch学习记录-torchtext和Pytorch的实例( 使用神经网络训练Seq2Seq代码)
Pytorch学习记录-torchtext和Pytorch的实例1 0. PyTorch Seq2Seq项目介绍 1. 使用神经网络训练Seq2Seq 1.1 简介,对论文中公式的解读 1.2 数据预 ...
- HTML5与CSS3权威指南之CSS3学习记录
title: HTML5与CSS3权威指南之CSS3学习记录 toc: true date: 2018-10-14 00:06:09 学习资料--<HTML5与CSS3权威指南>(第3版) ...
- springboot @cacheable不起作用_Springboot学习记录13 使用缓存:整合redis
本学习记录的代码,部分参考自gitee码云的如下工程.这个工程有详尽的Spingboot1.x教程.鸣谢! https://gitee.com/didispace/SpringBoot-Learnin ...
- 【Cmake】Cmake学习记录
Cmake学习记录 1.1 常例 add_library(gen_reference_infogen_reference_info/gen_reference_info.hgen_reference_ ...
- ASP.NETCore学习记录(一)
ASP.NETCore学习记录(一) asp.net core介绍 Startup.cs ConfigureServices Configure 0. ASP.NETCore 介绍 ASP.N ...
- Android开发技术周报176学习记录
Android开发技术周报176学习记录 教程 当 OkHttp 遇上 Http 2.0 http://fucknmb.com/2018/04/16/%E5%BD%93OkHttp%E9%81%87% ...
- add函数 pytorch_Pytorch学习记录-Pytorch可视化使用tensorboardX
Pytorch学习记录-Pytorch可视化使用tensorboardX 在很早很早以前(至少一个半月),我做过几节关于tensorboard的学习记录. https://www.jianshu.co ...
- java之字符串学习记录
java之字符串学习记录 public class StringDemo { public static void main(String[] args) { //静态初始化字符串 String s1 ...
最新文章
- Python爬虫破解有道翻译
- c语言中void delay0.5(),单片机彩灯是怎样点亮
- db2 如何导出insert语句_《MySQL 入门教程》第 23 篇 DML 语句之插入数据
- 与老黄的技术对聊总结
- 【个人成长学习讨论小组】练习2:角色
- python实现50行代码_50行Python代码,教你获取公众号全部文章
- 【OpenCV 例程200篇】46. 直方图均衡化
- Linux防火墙iptables的策略
- 使用Python监控SNMP Trap并获取OSPF邻居状态
- mongoDB - 插入数据
- NWT失败反思:公司都死了,还怕得罪人
- 如何记才能不搞混绝对路径和相对路径
- 深度剖析华为的管理哲学(建议收藏)
- 6月书讯 | 初夏,正好读新书
- RFID和NFC的区别 以及门禁卡和饭卡
- JavaScript中Date的toGMTString()方法
- PHP学习练手(十)
- VS或VC编译正常,但运行时出现Stack overflow
- 这9本书,带你了解 ChatGPT 的底层逻辑(文末赠书)
- nmon的安装与使用
热门文章
- IntellIJ IDEA导入项目后无法运行方法的解决方法!
- QMidi Pro for mac (终极多媒体卡拉OK播放器)
- matlab输出波形自动找到波峰波谷,Matlab中利用findpeaks找波峰和波谷
- [分布式控制浅述] (3)简单分布式事件触发控制
- win7 删除java_windows7系统卸载java的操作方法?
- 编程猫Nemo基本代码块
- 下一代威胁感知系统的设计构想
- python判断字符是英文字母怎么回事_python判断字符串是否包含字母
- 详解非结构化数据(文档)安全管理解决方案
- 计算机如何管理应用,电脑怎么管理iPhone手机应用