标签:
可以用 Docker 立即体验 TDengine。如果您希望对 TDengine 贡献代码或对内部实现感兴趣,请参考我们的 TDengine GitHub 主页 下载源码构建和安装.
TDengine 完整的软件包包括服务端(taosd)、应用驱动(taosc)、用于与第三方系统对接并提供 RESTful 接口的 taosAdapter、命令行程序(CLI,taos)和一些工具软件。目前 TDinsight 仅在 Linux 系统上安装和运行,后续将支持 Windows、macOS 等系统。TDengine 除了提供多种语言的连接器之外,还通过 taosAdapter 提供 RESTful 接口。
为方便使用,标准的服务端安装包包含了 taosd、taosAdapter、taosc、taos、taosdump、taosBenchmark、TDinsight 安装脚本和示例代码;如果您只需要用到服务端程序和客户端连接的 C/C++ 语言支持,也可以仅下载 Lite 版本的安装包。
在 Linux 系统上,TDengine 社区版提供 Deb 和 RPM 格式安装包,用户可以根据自己的运行环境选择合适的安装包。其中 Deb 支持 Debian/Ubuntu 及其衍生系统,RPM 支持 CentOS/RHEL/SUSE 及其衍生系统。同时我们也为企业用户提供 tar.gz 格式安装包,也支持通过 apt-get
工具从线上进行安装。需要注意的是,RPM 和 Deb 包不含 taosdump
和 TDinsight 安装脚本,这些工具需要通过安装 taosTools 包获得。TDengine 也提供 Windows x64 平台和 macOS x64/m1 平台的安装包。
运行环境要求
在linux系统中,运行环境最低要求如下:
linux 内核版本 - 3.10.0-1160.83.1.el7.x86_64;
glibc 版本 - 2.17;
如果通过clone源码进行编译安装,还需要满足:
cmake版本 - 3.26.4或以上;
gcc 版本 - 9.3.1或以上;
安装
- Deb 安装
- RPM 安装
- tar.gz 安装
- apt-get
- Windows 安装
- macOS 安装
- 从列表中下载获得 Deb 安装包;
- TDengine-server-3.2.2.0-Linux-x64.deb (46.9 M)
- taosTools-2.5.2-Linux-x64-comp3.deb (0.3 M)
- 进入到安装包所在目录,执行如下的安装命令:
请将
<version>
替换为下载的安装包版本
sudo dpkg -i TDengine-server-<version>-Linux-x64.deb
INFO
下载其他组件、最新 Beta 版及之前版本的安装包,请点击发布历史页面。
NOTE
当安装第一个节点时,出现 Enter FQDN:
提示的时候,不需要输入任何内容。只有当安装第二个或以后更多的节点时,才需要输入已有集群中任何一个可用节点的 FQDN,支持该新节点加入集群。当然也可以不输入,而是在新节点启动前,配置到新节点的配置文件中。
启动
- Linux 系统
- Windows 系统
- macOS 系统
安装后,请使用 systemctl
命令来启动 TDengine 的服务进程。
systemctl start taosd
检查服务是否正常工作:
systemctl status taosd
如果服务进程处于活动状态,则 status 指令会显示如下的相关信息:
Active: active (running)
如果后台服务进程处于停止状态,则 status 指令会显示如下的相关信息:
Active: inactive (dead)
如果 TDengine 服务正常工作,那么您可以通过 TDengine 的命令行程序 taos
来访问并体验 TDengine。
如下 systemctl
命令可以帮助你管理 TDengine 服务:
-
启动服务进程:
systemctl start taosd
-
停止服务进程:
systemctl stop taosd
-
重启服务进程:
systemctl restart taosd
-
查看服务状态:
systemctl status taosd
INFO
systemctl
命令需要 root 权限来运行,如果您非 root 用户,请在命令前添加sudo
。systemctl stop taosd
指令在执行后并不会马上停止 TDengine 服务,而是会等待系统中必要的落盘工作正常完成。在数据量很大的情况下,这可能会消耗较长时间。- 如果系统中不支持
systemd
,也可以用手动运行/usr/local/taos/bin/taosd
方式启动 TDengine 服务。
TDengine 命令行(CLI)
为便于检查 TDengine 的状态,执行数据库(Database)的各种即席(Ad Hoc)查询,TDengine 提供一命令行应用程序(以下简称为 TDengine CLI)taos。要进入 TDengine 命令行,您只要在终端执行 taos
即可。
taos
如果连接服务成功,将会打印出欢迎消息和版本信息。如果失败,则会打印错误消息出来(请参考 FAQ 来解决终端连接服务端失败的问题)。TDengine CLI 的提示符号如下:
taos>
在 TDengine CLI 中,用户可以通过 SQL 命令来创建/删除数据库、表等,并进行数据库(Database)插入查询操作。在终端中运行的 SQL 语句需要以分号(;)结束来运行。示例:
CREATE DATABASE demo;
USE demo;
CREATE TABLE t (ts TIMESTAMP, speed INT);
INSERT INTO t VALUES ('2019-07-15 00:00:00', 10);
INSERT INTO t VALUES ('2019-07-15 01:00:00', 20);
SELECT * FROM t;
ts | speed |
========================================
2019-07-15 00:00:00.000 | 10 |
2019-07-15 01:00:00.000 | 20 |
Query OK, 2 row(s) in set (0.003128s)
除执行 SQL 语句外,系统管理员还可以从 TDengine CLI 进行检查系统运行状态、添加删除用户账号等操作。TDengine CLI 连同应用驱动也可以独立安装在机器上运行,更多细节请参考 TDengine 命令行。
使用 taosBenchmark 体验写入速度
可以使用 TDengine 的自带工具 taosBenchmark 快速体验 TDengine 的写入速度。
启动 TDengine 服务,然后在终端执行 taosBenchmark
(曾命名为 taosdemo
):
$ 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.Campbell
、California.Cupertino
、California.LosAngeles
、California.MountainView
、California.PaloAlto
、California.SanDiego
、California.SanFrancisco
、California.SanJose
、California.SantaClara
或者 California.Sunnyvale
。
这条命令很快完成 1 亿条记录的插入。具体时间取决于硬件性能,即使在一台普通的 PC 服务器往往也仅需十几秒。
taosBenchmark 命令本身带有很多选项,配置表的数目、记录条数等等,您可以设置不同参数进行体验,请执行 taosBenchmark --help
详细列出。taosBenchmark 详细使用方法请参照如何使用 taosBenchmark 对 TDengine 进行性能测试和 taosBenchmark 参考手册。
使用 TDengine CLI 体验查询速度
使用上述 taosBenchmark
插入数据后,可以在 TDengine CLI(taos)输入查询命令,体验查询速度。
查询超级表 meters
下的记录总条数:
SELECT COUNT(*) FROM test.meters;
查询 1 亿条记录的平均值、最大值、最小值等:
SELECT AVG(current), MAX(voltage), MIN(phase) FROM test.meters;
查询 location = "California.SanFrancisco" 的记录总条数:
SELECT COUNT(*) FROM test.meters WHERE location = "California.SanFrancisco";
查询 groupId = 10 的所有记录的平均值、最大值、最小值等:
SELECT AVG(current), MAX(voltage), MIN(phase) FROM test.meters WHERE groupId = 10;
对表 d10
按每 10 秒进行平均值、最大值和最小值聚合统计:
SELECT FIRST(ts), AVG(current), MAX(voltage), MIN(phase) FROM test.d10 INTERVAL(10s);
标签: 来源:
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。