qdjjx 5 роки тому
джерело
коміт
a89ab4c66b

+ 99
- 0
实践/后端/项目/InfluxDB操作.md Переглянути файл

@@ -0,0 +1,99 @@
1
+>基本概念
2
+- database 数据库
3
+- measurement 数据库中的表
4
+- points 表里面的一行数据
5
+- point 由时间戳(Time)、数据(field)、标签(tags)组成
6
+    - Time:每个数据记录时间,是数据库中的主索引(会自动生成)
7
+    - fields:各种记录值(没有索引的属性)也就是记录的值
8
+    - tags:各种有索引的属性
9
+
10
+- measurement看成是一个SQL表格,其中,时间戳始终是主索引,tag和field是表格中的列,tag会被建索引,而field则不会。与SQL表格的不同之处在于,使用TSDB For InfluxDB®,您可以有数百万的measurement,无需预先定义数据的schema,并且不会存储空值。
11
+> 具体操作
12
+
13
+>启动Influx
14
+   
15
+ - 执行命令语句
16
+  ```
17
+  ./influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242
18
+  ```
19
+  - 执行不需要制定数据库的查询
20
+   ```
21
+   influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -execute 'SHOW DATABASES'
22
+   ```
23
+   - 执行需要指定数据库的查询,同时,改变时间戳精度:
24
+    ```
25
+    influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -execute 'SELECT * FROM "h2o_feet" LIMIT 3' -database="NOAA_water_database" -precision=rfc3339
26
+    ```
27
+ -  使用-format指定服务器返回结果的格式
28
+    -  默认的格式是column:
29
+    ```
30
+     influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -format=column
31
+    ```
32
+    - 将格式改为csv:
33
+    ```
34
+    influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -format=csv
35
+    ```
36
+    - 将格式改为json:
37
+    ```
38
+    influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -format=json
39
+    ```
40
+    - 将格式改为json并开启美观的输出:
41
+    ```
42
+    influx -ssl -username influxuser -password user@influxDB -host ts-uf60ncdtuve8d41w3.influxdata.rds.aliyuncs.com -port 3242 -format=json -pretty
43
+    ```
44
+
45
+
46
+
47
+> 显示购买的数据库名称
48
+   - 执行命令语句 show databases
49
+> 使用该数据库
50
+   - 执行命令语句 use <该数据库的名称>
51
+   - 显示 Using databases 数据库名称
52
+
53
+>往数据库中插入表(measurement)
54
+    - 执行命令语句:
55
+  ```
56
+  insert  cpu_usage,ip=192.168.0.1 value=30 15226580942111
57
+  cpu_usage 代表表名,ip是tag索引,value=xx是记录值键值对,记录值可以有多个
58
+  ```
59
+- 显示所有的表
60
+   - 查询命令:show measurements
61
+- 查询插入的数据
62
+```
63
+select * from cpu_usage
64
+```
65
+  - 输入命令后显示出的内容
66
+```
67
+  name: cpu_usage
68
+time           ip          value
69
+----           --          -----
70
+15226580942111 192.168.0.1 30
71
+```
72
+> 往表中插入数据
73
+   - 输入命令
74
+    ```
75
+    INSERT cpu,host=serverA,region=us_west value=0.64
76
+    一个measurement为cpu,tag为host和region,测量值value为0.64的数据点已经写入数据库
77
+    ```  
78
+    - 查询刚插入的数据
79
+    ```
80
+    SELECT “host”, “region”, “value” FROM  cpu
81
+    ```
82
+    - 输入命令后显示的界面
83
+     ```
84
+     > name: cpu
85
+       time           host       region    value  
86
+    1564026380476736485 serverA us_west 0.64
87
+
88
+     ```
89
+
90
+- 注释:前面我们在写入数据点的时候没有提供时间戳。如果写入没有带时间戳的数据点,TSDB For InfluxDB®会在获取该点时,把本地当前时间分配给该数据点,作为该数据点的时间戳。这意味着您的时间戳跟上面的会有所不同。
91
+
92
+- 写入另一种类型的数据,同一个measurement有两个field
93
+   -  输入命令
94
+   ```
95
+  INSERT temperature,machine=unit42,type=assembly external=25,internal=37
96
+
97
+  创建了表temperature,machine为tag-key,type和external为field-key
98
+  ```
99
+

BIN
实践/后端/项目/imgs/单值数据写入请求参数.PNG Переглянути файл


+ 38
- 0
实践/后端/项目/时序数据库.md Переглянути файл

@@ -0,0 +1,38 @@
1
+
2
+- TSDB 实例地址在实例详情页可以查到, 例如“ts-xxx.hitsdb.rds.aliyuncs.com:8242”。
3
+- 时序数据库
4
+
5
+  - 英文全称为 Time Series Database,提供高效存取时序数据和统计分析功能的数据管理系统。
6
+
7
+-  时序数据
8
+
9
+   - 基于稳定频率持续产生的一系列指标监测数据
10
+
11
+- 时间线(Timeline):等同于时间序列的概念
12
+- 时间精度:时间线数据的写入时间精度——毫秒、秒、分钟、小时或者其他稳定时间频度
13
+- 数据点 (Data Point):针对监测对象的某项指标(由度量和标签定义)按特定时间间隔(连续的时间戳)采集的每个度量值就是一个数据点。“
14
+
15
+> HTTP API
16
+
17
+- TSDB 实例支持通过 HTTP 协议进行数据写入和查询等操
18
+ 
19
+API 描述
20
+- /api/put	写入数据
21
+- /api/query	查询数据
22
+- /api/query/last	查询时间线最新数据点
23
+- /api/mput	多值写入
24
+- /api/mquery	多值查询
25
+- /api/query/mlast	多值查询最新数据点
26
+- /api/suggest	查询 Metric,Tagk,Tagv ,Field
27
+- /api/dump_meta	查询 Tagk 下的 Tagv
28
+- /api/ttl	设置数据时效
29
+- /api/delete_data	清理数据
30
+- /api/delete_meta	清理时间线
31
+
32
+
33
+> 单值数据写入
34
+- 请求路径  /api/put
35
+- 请求方式 post
36
+- 描述:一次写入多个数据点
37
+- 请求数据
38
+![](./imgs/单值数据写入请求参数.png)

Завантаження…
Відмінити
Зберегти