跳到主要内容

使用安装包快速体验 TDengine TSDB

为了能够快速体验 TDengine TSDB 的完整功能,推荐您使用 TDengine TSDB-Enterprise. 本节首先介绍如何通过安装包快速安装 TDengine TSDB-Enterprise, 然后介绍如何在 Linux 环境下体验 TDengine TSDB 的写入、查询、可视化管理、与 Grafana 集成和零代码数据写入等功能。如果您希望为 TDengine TSDB 贡献代码或对内部技术实现感兴趣,请参考 TDengine TSDB GitHub 主页.

安装

  1. 从列表中下载获得 tar.gz 安装包:

    • 进入到安装包所在目录,使用 tar 解压安装包,以 x64 架构为例:

      tar -zxvf tdengine-tsdb-enterprise-{{VERSION}}-linux-x64.tar.gz
    • 进入到安装包所在目录,先解压文件后,进入子目录,执行其中的 install.sh 安装脚本。

      sudo ./install.sh

    更多类型和版本的安装包,请前往 TDengine 产品下载中心 下载。

    启动

    完成安装后,请在终端执行以下脚本,启动所有服务:

    sudo start-all.sh 

    TDengine TSDB 的所有组件均使用 systemd 来进行服务管理,可以使用以下命令查看服务的状态:

    sudo systemctl status taosd
    sudo systemctl status taosadapter
    sudo systemctl status taoskeeper
    sudo systemctl status taos-explorer

    如果查看到服务的状态为 "Active: active (running) since ...", 则说明服务已经启动成功。

    快速体验

    体验 TDengine TSDB 命令行

    为便于检查 TDengine 的状态,执行数据库(Database)的各种即席(Ad Hoc)查询,TDengine TSDB 提供一命令行应用程序(以下简称为 TDengine TSDB CLI)taos。要进入 TDengine 命令行,您只要在终端执行 taos (Linux/Mac) 或 taos.exe (Windows) 即可。TDengine CLI 的提示符号如下:

    taos>

    在 TDengine TSDB 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 TSDB CLI 进行检查系统运行状态、添加删除用户账号等操作。TDengine TSDB CLI 连同应用驱动也可以独立安装在机器上运行,更多细节请参考 TDengine TSDB 命令行

    体验写入

    taosBenchmark 是一个专为测试 TDengine 性能而设计的工具,它能够全面评估 TDengine 在写入、查询和订阅等方面的功能表现。该工具能够模拟大量设备产生的数据,并允许用户灵活控制数据库、超级表、标签列的数量和类型、数据列的数量和类型、子表数量、每张子表的数据量、写入数据的时间间隔、工作线程数量以及是否写入乱序数据等策略。

    启动 TDengine 的服务,在终端中执行如下命令

    taosBenchmark -y

    系统将自动在数据库 test 下创建一张名为 meters 的超级表。这张超级表将包含 10,000 张子表,表名从 d0 到 d9999,每张表包含 10,000 条记录。每条记录包含 ts(时间戳)、current(电流)、voltage(电压)和 phase(相位)4 个字段。时间戳范围从“2017-07-14 10:40:00 000”到“2017-07-14 10:40:09 999”。每张表还带有 location 和 groupId 两个标签,其中,groupId 设置为 1 到 10,而 location 则设置为 California.Campbell、California.Cupertino 等城市信息。

    执行该命令后,系统将迅速完成 1 亿条记录的写入过程。实际所需时间取决于硬件性能,但即便在普通 PC 服务器上,这个过程通常也只需要十几秒。

    taosBenchmark 提供了丰富的选项,允许用户自定义测试参数,如表的数目、记录条数等。要查看详细的参数列表,请在终端中输入如下命令

    taosBenchmark --help

    有关 taosBenchmark 的详细使用方法,请参考 taosBenchmark 参考手册

    体验查询

    使用上述 taosBenchmark 插入数据后,可以在 TDengine CLI(taos)输入查询命令,体验查询速度。

    1. 查询超级表 meters 下的记录总条数
    SELECT COUNT(*) FROM test.meters;
    1. 查询 1 亿条记录的平均值、最大值、最小值
    SELECT AVG(current), MAX(voltage), MIN(phase) FROM test.meters;
    1. 查询 location = "California.SanFrancisco" 的记录总条数
    SELECT COUNT(*) FROM test.meters WHERE location = "California.SanFrancisco";
    1. 查询 groupId = 10 的所有记录的平均值、最大值、最小值
    SELECT AVG(current), MAX(voltage), MIN(phase) FROM test.meters WHERE groupId = 10;
    1. 对表 d1001 按每 10 秒进行平均值、最大值和最小值聚合统计
    SELECT _wstart, AVG(current), MAX(voltage), MIN(phase) FROM test.d1001 INTERVAL(10s);

    在上面的查询中,使用系统提供的伪列 _wstart 来给出每个窗口的开始时间。

    进阶体验

    完成以上内容后,您可继续体验以下任务:

    下一步

    在完成上述快速体验后,您可以进一步探索 TDengine 的更多功能和特性。