立即开始

快速上手

TDengine软件分为服务器、客户端和报警模块三部分,服务器部分taosd目前仅能在Linux系统上安装和运行,客户端和报警模块仅能在Linux或Windows上运行。如果应用需要在Mac上运行,只能使用TDengine的RESTful接口连接服务器。硬件支持X64和ARM的CPU系统。用户可根据需求选择通过源码或者安装包来安装。

通过源码安装

请参考我们的TDengine github主页下载源码并安装。

通过Docker容器运行

请参考TDengine官方Docker镜像的发布、下载和使用

通过安装包安装

服务器部分,我们提供三种安装包,您可以根据需要选择。TDengine的安装非常简单,从下载到安装成功仅仅只要几秒钟。

  • TDengine-server-2.0.18.0-Linux-x64.rpm (4.2M)
  • TDengine-server-2.0.18.0-Linux-x64.deb (2.7M)
  • TDengine-server-2.0.18.0-Linux-x64.tar.gz (4.5M)

客户端部分,Linux安装包如下:

  • TDengine-client-2.0.18.0-Linux-x64.tar.gz (3.0M)

报警模块的Linux安装包如下(请参考报警模块的使用方法):

  • TDengine-alert-2.0.18.0-Linux-x64.tar.gz (8.1M)

如果想下载最新beta版及之前版本的安装包,请点击这里

目前,TDengine只支持在使用systemd做进程服务管理的linux系统上安装。其他linux系统的支持正在开发中。用which命令来检测系统中是否存在systemd:

  1. which systemd

如果系统中不存在systemd命令,请考虑通过源码安装TDengine。

启动并体验TDengine

服务器程序安装成功后,用户可使用systemctl命令来启动TDengine的服务进程。

  1. systemctl start taosd

检查服务是否正常工作。

  1. systemctl status taosd

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

注:systemctl 命令需要 root 权限来运行,如果您非 root 用户,请在命令前添加 sudo

TDengine命令行程序

执行TDengine命令行程序,您只要在Linux终端执行taos即可

  1. taos

如果TDengine终端链接服务成功,将会打印出欢迎消息和版本信息。如果失败,则会打印错误消息出来(请参考FAQ来解决终端链接服务端失败的问题)。如果不在TDengine服务器上运行taos, 需要安装有TDengine客户端程序,而且使用-h命令行参数来指定服务器IP地址。TDengine终端的提示符号如下:

  1. taos>

在TDengine终端中,用户可以通过SQL命令来创建/删除数据库、表等,并进行插入查询操作。在终端中运行的SQL语句需要以分号结束来运行。示例:

  1. create database db;
  2. use db;
  3. create table t (ts timestamp, speed int);
  4. insert into t values ('2019-07-15 00:00:00', 10);
  5. insert into t values ('2019-07-15 01:00:00', 20);
  6. select * from t;
  7. ts | speed |
  8. ===================================
  9. 19-07-15 00:00:00.000| 10|
  10. 19-07-15 01:00:00.000| 20|
  11. Query OK, 2 row(s) in set (0.001700s)

除执行SQL语句外,系统管理员还可以从TDengine终端检查系统运行状态,添加删除用户账号等。

命令行参数

您可通过配置命令行参数来改变TDengine终端的行为。以下为常用的几个命令行参数:

  • -c, —config-dir: 指定配置文件目录,默认为/etc/taos
  • -h, —host: 指定服务的IP地址,默认为本地服务
  • -s, —commands: 在不进入终端的情况下运行TDengine命令
  • -u, — user: 链接TDengine服务器的用户名,缺省为root
  • -p, —password: 链接TDengine服务器的密码,缺省为taosdata
  • -?, —help: 打印出所有命令行参数

示例:

  1. taos -h 192.168.0.1 -s "use db; show tables;"

运行SQL命令脚本

TDengine终端可以通过source命令来运行SQL命令脚本.

  1. taos> source <filename>;

我们在目录“/tests/examples/bash/”下面提供了一个示例脚本“demo.sql”,您可以直接将”filename”替换为我们的示例脚本快速尝试一下。

Shell小技巧

  • 可以使用上下光标键查看已经历史输入的命令
  • 修改用户密码。在shell中使用alter user命令
  • ctrl+c 中止正在进行中的查询
  • 执行RESET QUERY CACHE清空本地缓存的表的schema

TDengine 极速体验

启动TDengine的服务,在Linux终端执行taosdemo

  1. > taosdemo

该命令将在数据库test下面自动创建一张超级表meters,该超级表下有1万张表,表名为”t0” 到”t9999”,每张表有10万条记录,每条记录有 (f1, f2, f3)三个字段,时间戳从”2017-07-14 10:40:00 000” 到”2017-07-14 10:41:39 999”,每张表带有标签areaid和loc, areaid被设置为1到10, loc被设置为”beijing”或者“shanghai”。

执行这条命令大概需要10分钟,最后共插入10亿条记录。

在TDengine客户端输入查询命令,体验查询速度。

  • 查询超级表下记录总条数:
  1. taos>select count(*) from test.meters;
  • 查询10亿条记录的平均值、最大值、最小值等:
  1. taos>select avg(f1), max(f2), min(f3) from test.meters;
  • 查询loc=”beijing”的记录总条数:
  1. taos>select count(*) from test.meters where loc="beijing";
  • 查询areaid=10的所有记录的平均值、最大值、最小值等:
  1. taos>select avg(f1), max(f2), min(f3) from test.meters where areaid=10;
  • 对表t10按10s进行平均值、最大值和最小值聚合统计:
  1. taos>select avg(f1), max(f2), min(f3) from test.t10 interval(10s);

Note: taosdemo命令本身带有很多选项,配置表的数目、记录条数等等,请执行 taosdemo --help详细列出。您可以设置不同参数进行体验。

主要功能

TDengine的核心功能是时序数据库。除此之外,为减少研发的复杂度、系统维护的难度,TDengine还提供缓存、消息队列、订阅、流式计算等功能。更详细的功能如下:

  • 使用类SQL语言用插入或查询数据
  • 支持C/C++, Java(JDBC), Python, Go, RESTful, and Node.JS 开发接口
  • 可通过Python/R/Matlab or TDengine shell做Ad Hoc查询分析
  • 通过定时连续查询支持基于滑动窗口的流式计算
  • 使用超级表来更灵活高效的聚合多个时间线的数据
  • 时间轴上聚合一个或多个时间线的数据
  • 支持数据订阅,一旦有新数据,就立即通知应用
  • 支持缓存,每个时间线或设备的最新数据都从内存里快速获取
  • 历史数据与实时数据处理完全透明,不用区别对待
  • 支持链接Telegraf, Grafana等第三方工具
  • 成套的配置和工具,让你更好的管理TDengine

对于企业版,TDengine还提供如下高级功能:

  • 线性水平扩展能力,以提供更高的处理速度和数据容量
  • 高可靠,无单点故障,提供运营商级别的服务
  • 多个副本自动同步,而且可以跨机房
  • 多级存储,让历史数据处理的成本更低
  • 用户友好的管理后台和工具,让管理更轻松简单

TDengine是专为物联网、车联网、工业互联网、运维监测等场景优化设计的时序数据处理引擎。与其他方案相比,它的插入查询速度都快10倍以上。单核一秒钟就能插入100万数据点,读出1000万数据点。由于采用列式存储和优化的压缩算法,存储空间不及普通数据库的1/10.

深入了解TDengine

请继续阅读文档来深入了解TDengine。