01-docker.md 3.4 KB
Newer Older
1
---
G
gccgdb1234 已提交
2
sidebar_label: Docker
3 4
title: 通过 Docker 快速体验 TDengine
---
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
5 6 7
:::info
如果您希望对 TDengine 贡献代码或对内部实现感兴趣,请参考我们的 [TDengine GitHub 主页](https://github.com/taosdata/TDengine) 下载源码构建和安装.
:::
8

G
gccgdb1234 已提交
9
本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。
10

G
gccgdb1234 已提交
11
## 启动 TDengine
12

G
gccgdb1234 已提交
13
如果已经安装了 docker, 只需执行下面的命令。
14

G
gccgdb1234 已提交
15
```shell
16
docker run -d -p 6030:6030 -p 6041/6041 -p 6043-6049/6043-6049 -p 6043-6049:6043-6049/udp tdengine/tdengine
17 18
```

19 20
注意:TDengine 3.0 服务端仅使用 6030 TCP 端口。6041 为 taosAdapter 所使用提供 REST 服务端口。6043-6049 为 taosAdapter 提供第三方应用接入所使用端口,可根据需要选择是否打开。

G
gccgdb1234 已提交
21
确定该容器已经启动并且在正常运行
22

G
gccgdb1234 已提交
23
```shell
24 25 26
docker ps
```

G
gccgdb1234 已提交
27
进入该容器并执行 bash
28

G
gccgdb1234 已提交
29 30
```shell
docker exec -it <container name> bash
31 32
```

G
gccgdb1234 已提交
33
然后就可以执行相关的 Linux 命令操作和访问 TDengine
34

G
gccgdb1234 已提交
35
:::info
36

G
gccgdb1234 已提交
37
Docker 工具自身的下载请参考 [Docker 官网文档](https://docs.docker.com/get-docker/)
38

G
gccgdb1234 已提交
39
安装完毕后可以在命令行终端查看 Docker 版本。如果版本号正常输出,则说明 Docker 环境已经安装成功。
40 41

```bash
G
gccgdb1234 已提交
42 43
$ docker -v
Docker version 20.10.3, build 48d30b5
44 45
```

G
gccgdb1234 已提交
46
:::
47

G
gccgdb1234 已提交
48
## 运行 TDengine CLI
49

G
gccgdb1234 已提交
50
进入容器,执行 taos 
51 52 53 54

```
$ taos

G
gccgdb1234 已提交
55
taos> 
56 57 58

```

G
gccgdb1234 已提交
59
## 写入数据
60

G
gccgdb1234 已提交
61
可以使用 TDengine 的自带工具 taosBenchmark 快速体验 TDengine 的写入。
62

G
gccgdb1234 已提交
63
进入容器,启动 taosBenchmark:
64 65

   ```bash
G
gccgdb1234 已提交
66 67
   $ taosBenchmark
   
68 69
   ```

sangshuduo's avatar
sangshuduo 已提交
70
   该命令将在数据库 test 下面自动创建一张超级表 meters,该超级表下有 1 万张表,表名为 "d0" 到 "d9999",每张表有 1 万条记录,每条记录有 (ts, current, voltage, phase) 四个字段,时间戳从 "2017-07-14 10:40:00 000" 到 "2017-07-14 10:40:09 999",每张表带有标签 location 和 groupId,groupId 被设置为 1 到 10, location 被设置为 "San Francisco" 或者 "Los Angeles"等城市名称。
71

G
gccgdb1234 已提交
72
   这条命令很快完成 1 亿条记录的插入。具体时间取决于硬件性能。
73

74
   taosBenchmark 命令本身带有很多选项,配置表的数目、记录条数等等,您可以设置不同参数进行体验,请执行 `taosBenchmark --help` 详细列出。taosBenchmark 详细使用方法请参照 [taosBenchmark 参考手册](../../reference/taosbenchmark)
75

G
gccgdb1234 已提交
76
## 体验查询
77

G
gccgdb1234 已提交
78
使用上述 taosBenchmark 插入数据后,可以在 TDengine CLI 输入查询命令,体验查询速度。。
79

G
gccgdb1234 已提交
80
查询超级表下记录总条数:
81

G
gccgdb1234 已提交
82 83 84
```sql
taos> select count(*) from test.meters;
```
85

G
gccgdb1234 已提交
86
查询 1 亿条记录的平均值、最大值、最小值等:
87

G
gccgdb1234 已提交
88 89
```sql
taos> select avg(current), max(voltage), min(phase) from test.meters;
90 91
```

sangshuduo's avatar
sangshuduo 已提交
92
查询 location="San Francisco" 的记录总条数:
93

G
gccgdb1234 已提交
94
```sql
95
taos> select count(*) from test.meters where location="San Francisco";
96 97
```

G
gccgdb1234 已提交
98
查询 groupId=10 的所有记录的平均值、最大值、最小值等:
99

G
gccgdb1234 已提交
100 101
```sql
taos> select avg(current), max(voltage), min(phase) from test.meters where groupId=10;
102 103
```

G
gccgdb1234 已提交
104 105 106 107
对表 d10 按 10s 进行平均值、最大值和最小值聚合统计:

```sql
taos> select avg(current), max(voltage), min(phase) from test.d10 interval(10s);
108
```
G
gccgdb1234 已提交
109 110 111 112

## 其它

更多关于在 Docker 环境下使用 TDengine 的细节,请参考 [在 Docker 下使用 TDengine](../../reference/docker)