TDengine安装及性能测试

TDengine官方使用文档

一、选择安装文件版本在这里插入图片描述

TDengine分为服务端和客户端,通常安装服务端即可,如果服务端和客户端不在一台主机上的话需要单独安装客户端。

二、将下载好的tar包上传到服务器即可

上传服务器后解压即可,

#替换为下载的安装包版本
tar -zxvf TDengine-server--Linux-x64.tar.gz

在这里插入图片描述
里面有两个文件夹、一个压缩文件和install.sh安装执行文件,进入对应的安装目录,也就是./install.sh文件所在目录,执行命令:

#需要管理员权限,如果不是管理员账户登录,加上sudo授予对应权限
sudo ./install.sh

在这里插入图片描述
至此,安装完成!

注意:
1、当安装第一个节点时,出现 Enter FQDN:提示的时候,不需要输入任何内容。只有当安装第二个或以后更多的节点时,才需要输入已有集群中任何一个可用节点的 FQDN,支持该新节点加入集群。当然也可以不输入,而是在新节点启动前,配置到新节点的配置文件中。
2、TDengine 使用 FQDN 来访问,而不是IP地址,因为在生产环境下IP地址可能会发生变化,所以要配置下hostname
在这里插入图片描述
修改hosts文件,命令:vim /etc/hosts
笔者的配置是:在这里插入图片描述
其中:192.168.1.106是服务器(虚拟机IP地址,可使用命令ifconfig -a来查看),localdomain.com是linux主机名(这可不是随便写的,可使用命令hostname -f 来查看)

三、启动

#安装后,请使用 systemctl 命令来启动 TDengine 的服务进程。
systemctl start taosd

#检查服务是否正常工作:
systemctl status taosd
在这里插入图片描述

如果 TDengine 服务正常工作,那么您可以通过 TDengine 的命令行程序 taos 来访问并体验 TDengine。

systemctl 命令汇总:
启动服务进程:systemctl start taosd
停止服务进程:systemctl stop taosd
重启服务进程:systemctl restart taosd
查看服务状态:systemctl status taosd

注意:
systemctl stop taosd 指令在执行后并不会马上停止 TDengine 服务,而是会等待系统中必要的落盘工作正常完成。在数据量很大的情况下,这可能会消耗较长时间;
如果系统中不支持 systemd,也可以用手动运行 /usr/local/taos/bin/taosd 方式启动 TDengine 服务。

四、TDengine命令行快速体验

终端输入命令:

taos
在这里插入图片描述
至此,服务连接成功!

我们可以通过 SQL 命令来创建/删除数据库、表等,并进行数据库(database)插入查询操作,
例如:
1:创建数据库:
在这里插入图片描述
2:创建表
在这里插入图片描述
3、插入记录
在这里插入图片描述
4、查询记录
在这里插入图片描述

五、读写测试

5.1 写性能

InfluxDB作为目前业界最流行的一个TSDB,以性能作为突出特点而闻名,作为行业标杆,而TDengine官方称道在InfluxDB最优的环境条件下,TDengine的写入速度是它的两倍!并且在设备数量放大到1000的时候,TDengine的写入速度是InfluxDB的5.2倍!

TDengine官方已内置taosBenchmark命令为方便用户快速体验TDengine的写库性能,
启动 TDengine 的服务后,在终端输入:

taosBenchmark

该命令将在数据库 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 被设置为 “California.SanFrancisco” 或者 “California.LosAngeles”。共计记录1亿条!

笔者目前虚拟机配置:2核3G 20G存储
实际测试如下:
在这里插入图片描述
**开启8个线程从创建表、插入记录1亿条共耗时84.6秒,平均每秒写1180000条记录!**记得之前笔者在mybatisPlus批量插入性能优化中测试mysql的批量插入时,写5w条数据就要耗时4秒左右(当然这只是粗略类比,毕竟两者适用业务不同)。TDengine的表现确实令人震惊!

5.2 读性能

查询超级表下的记录总数:(耗时0.35s,amazing!)
在这里插入图片描述

查询 1 亿条记录的平均值、最大值、最小值等:(耗时8.4秒)
在这里插入图片描述

查询 groupId=10 的所有记录的平均值、最大值、最小值等:(耗时0.86秒)
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42194695/article/details/126752604