tags:各种有索引的属性。
还有一个重要的名词:series
所有在数据库中的数据,都需要通过图表来表示,series表示这个表里面的所有的数据可以在图标上画成几条线(注:线条的个数由tags排列组合计算出来)
举个简单的小例子:
假如数据库内数据为(abc为tags):
a=1,b=1,c=1
a=1,b=2,c=1
a=1,b=3,c=1
a=1,b=3,c=1
a=1,b=3,c=1
a=2,b=1,c=1
a=1,b=1,c=1
a=1,b=1,c=1
输入show series from 表名
得到的是:
表名,a=1,b=1,c=1
表名,a=1,b=2,c=1
表名,a=1,b=3,c&
influxDB名词database:数据库;measurement:数据库中的表;points:表里面的一行数据。influxDB中独有的一些概念Point由时间戳(time)、数据(field)和标签(tags)组成。time:每条数据记录的时间,也是数据库自动生成的主索引;fields:各种记录的值;tags:各种有索引的属性。还有一个重要的名词:series所有在数据库中的数据,都需要通过...
Influxdb
基础指令数据库操作查询数据库
使用
数据库创建数据库删除数据库存储策略操作查询存储策略新建存储策略
修改
存储策略删除存储策略用户权限操作查询用户创建用户创建管理员权限的用户删除用户
表
操作查询
表
名新增
表
修改
表
删除
表
数据操作新增新增到指定保存策略
修改
删除查询函数一些概念示例
指令忽略大小写
数据库操作
查询数据库
show databases
_internal数据库为
influxDB
用来存内部运行指标的数据库
使用
数据库
use database
创建数据库
CREATE DATABASE data
1. 数据库闪回
1.1 查询是否有对应
表
删除的数据
select * from
表
名 as of timestamp to_timestamp('2020-12-15 14:57:47', 'yyyy-mm-dd hh24:mi:ss');
1.2 创建临时
表
并把查询到的删除数据保存到临时
表
内
create table 临时
表
名 as select * from
表
名 as of timestamp to_timesta
1、
修改
/etc/my.cnf 里,mysqld字段内加入“skip-grant-tables”,然后重启mysql
2.mysql -uroot -p
如果报错
使用
:mysql -h主机名 -uroot -p
3.
修改
密码,注意只能去
修改
mysql.user
表
select user,host from user;
update user set
1.安装
influxdb
的python包:pip install
influxdb
2.python连接
influxdb
: from
influxdb
import
InfluxDB
ClientClient =
InfluxDB
Client(host=’172.0.0.1’,port=8086,database=’testDB’)
3.插入数据:
InfluxDB
是一款开源的分布式时序数据库,它支持数据聚合和函数计算,可以用来处理大量的时间序列数据。在Java中,可以通过
InfluxDB
的Java API来实现聚合函数的
使用
。
以下是
InfluxDB
聚合函数在Java中的实用案例:
1. 查询最大值和最小值
使用
InfluxDB
的max()和min()函数可以查询一个时间段内某个字段的最大值和最小值。例如,查询CPU
使用
率的最大值和最小值:
```java
QueryResult queryResult =
influxDB
.query(new Query("SELECT max(cpu), min(cpu) FROM cpu_usage WHERE time > now() - 1h"));
2. 查询平均值
使用
InfluxDB
的mean()函数可以查询一个时间段内某个字段的平均值。例如,查询CPU
使用
率的平均值:
```java
QueryResult queryResult =
influxDB
.query(new Query("SELECT mean(cpu) FROM cpu_usage WHERE time > now() - 1h"));
3. 查询总和
使用
InfluxDB
的sum()函数可以查询一个时间段内某个字段的总和。例如,查询内存
使用
量的总和:
```java
QueryResult queryResult =
influxDB
.query(new Query("SELECT sum(memory) FROM memory_usage WHERE time > now() - 1h"));
4. 查询数量
使用
InfluxDB
的count()函数可以查询一个时间段内某个字段的数量。例如,查询请求次数的数量:
```java
QueryResult queryResult =
influxDB
.query(new Query("SELECT count(requests) FROM request_log WHERE time > now() - 1h"));
5. 查询百分比
使用
InfluxDB
的percentile()函数可以查询一个时间段内某个字段的百分比。例如,查询响应时间的90%百分位:
```java
QueryResult queryResult =
influxDB
.query(new Query("SELECT percentile(response_time, 90) FROM response_log WHERE time > now() - 1h"));
以上就是
InfluxDB
聚合函数在Java中的实用案例。
使用
这些函数可以方便地处理大量的时间序列数据,从而得到有用的信息和洞见。