首页 > 数据库 >【Database开发】国产数据库之涛思TDengine(命令测试)

【Database开发】国产数据库之涛思TDengine(命令测试)

时间:2023-04-18 22:03:56浏览次数:57  
标签:00 TDengine Database show 之涛思 California test taos

1、简介

TDengine 是一款开源、云原生的时序数据库,专为物联网、工业互联网、金融、IT 运维监控等场景设计并优化。它能让大量设备、数据采集器每天产生的高达 TB 甚至 PB 级的数据得到高效实时的处理,对业务的运行状态进行实时的监测、预警,从大数据中挖掘出商业价值。

在这里插入图片描述

TDengine 社区版是一开源版本,采用的是 AGPL 许可证,它具备高效处理时序数据所需要的所有功能,包括:

  • SQL 写入、无模式写入和通过第三方工具写入
  • S标准 SQL 查询、时序数据特色查询以及自定义函数(UDF)
  • S缓存每个时间序列的最新数据
  • S连续查询以及事件驱动流计算
  • S类 Kafka 数据订阅,加以过滤功能
  • S与 Grafana、Google Data Studio 可视化工具的无缝集成
  • S集群、高可用、高可靠
  • S主流编程语言的连接器
  • S命令行以及监控、数据导出、数据导入等多种工具

在这里插入图片描述

2、安装

2.1 安装TDengine服务

在这里插入图片描述 下载地址: https://docs.taosdata.com/get-started/package/

在这里插入图片描述 目前 TDengine 在 Windows 平台上只支持 Windows Server 2016/2019 和 Windows 10/11。

这里我们先下载和安装TDengine-server-3.0.1.7-Windows-x64.exe

安装之后的文件夹如下: 在这里插入图片描述

2.2 运行TDengine服务(taosd)

安装后,可以在拥有管理员权限的 cmd 窗口执行 sc start taosd 或在 C:\TDengine 目录下,运行 taosd.exe 来启动 TDengine 服务进程。

 taosd.exe

在这里插入图片描述

2.3 执行TDengine命令行(taos)

为便于检查 TDengine 的状态,执行数据库(Database)的各种即席(Ad Hoc)查询,TDengine 提供一命令行应用程序(以下简称为 TDengine CLI)taos。要进入 TDengine 命令行,您只要在终端执行 taos 即可。

taos

在这里插入图片描述

3、测试

TDengine 完整的软件包包括服务端(taosd)、用于与第三方系统对接并提供 RESTful 接口的 taosAdapter、应用驱动(taosc)、命令行程序 (CLI,taos) 和一些工具软件。TDengine 除了提供多种语言的连接器之外,还通过 taosAdapter 提供 RESTful 接口。

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

3.1 新建数据库(命令行命令)

进入 TDengine CLI 后,你可执行各种 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;

在这里插入图片描述 除执行 SQL 语句外,系统管理员还可以从 TDengine CLI 进行检查系统运行状态、添加删除用户账号等操作。TDengine CLI 连同应用驱动也可以独立安装在机器上运行,更多细节请参考 TDengine 命令行。

3.2 新建数据库(脚本文件)

在 TDengine CLI 里可以通过 source 命令来运行脚本文件中的多条 SQL 命令。

# taos> source <filename>;
taos> source test.txt;
  • test.txt内容如下:
CREATE DATABASE demo2;
USE demo2;
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;

在这里插入图片描述

3.3 命令行参数

# taos -h ip/hostname
# taos -h h1.taos.com -s "use db; show tables;"
taos -h 127.0.0.1 -s "use demo; show tables;"

在这里插入图片描述 常用的几个命令行参数:

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

3.4 taosBenchmark命令(体验写入速度)

可以使用 TDengine 的自带工具 taosBenchmark 快速体验 TDengine 的写入速度。 启动 TDengine 服务,然后在终端执行 taosBenchmark(曾命名为 taosdemo):

# taosBenchmark --help
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。

3.5 TDengine CLI命令(体验查询速度)

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

use test;
describe meters;
show tables;

在这里插入图片描述

查询超级表 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);

在这里插入图片描述

select count(tbname) from test.meters;
select count(*) from test.meters;
select * from test.meters limit 1;

在这里插入图片描述

3.6 基础命令

  • 查看服务端参数
taosd -C

在这里插入图片描述

  • 查看客户端参数
taos -C

在这里插入图片描述

  • 客户端登录
taos 

在这里插入图片描述

  • 查看数据库参数
show variables;

在这里插入图片描述

3.7 节点管理

  • 查看数据节点
show dnodes;

在这里插入图片描述

  • 查看管理节点
show mnodes;

在这里插入图片描述

  • 添加数据节点
create dnode "ms001.xiaomu.com:6030" ;

在这里插入图片描述

  • 删除数据节点
drop dnode "ms001.xiaomu.com:6030" ;

3.8 用户管理

  • 添加用户
create user xiaomu pass '123456';

在这里插入图片描述

  • 删除用户
drop user xiaomu ;
  • 查看用户
show users;
  • 修改用户密码
alter user xiaomu pass '666666';
  • 修改用户权限
alter user xiaomu privilege read;

系统内共有 super/write/read 三种权限级别,但不允许把 super 权限赋予用户。

3.9 会话管理

  • 查看会话
show connections;

在这里插入图片描述

  • 清理会话
kill connection 1219806014 ;

3.10 数据库管理

# 创建数据库
create database testdb replica 3 keep 30 days 7 blocks 4 update 1;
# 删除数据库
drop database testdb ;
# 修改数据库参数
alter database testdb comp 1;
alter database testdb replica 2;
alter database testdb keep 365;
alter database testdb quorum 2;
alter database testdb blocks 100;
alter database testdb cachelast 1;
# 查看vgroups
show vgroups;

3.11 表管理

# 创建表
use testdb;
create table t1 (ts TIMESTAMP,name1 BINARY(100)) ;

# 查看表结构
describe t1;

# 插入数据
insert into t1 values(‘2021-03-10 22:37:36.100’,‘test’);

# 查询表
select * from t1;

# 查看当前所有表
show tables;
# 创建超级表
use testdb;
create table st1 (ts TIMESTAMP,name1 BINARY(100)) tags (tgs binary(20));

# 查看超级表结构
describe st1;

# 插入数据
insert into t2 using st1 tags(‘tt’) values(‘2021-03-10 22:37:36.100’,‘test’);

# 查询超级表
select * from t1;

# 查看当前所有超级表
show stables;

结语

如果您觉得该方法或代码有一点点用处,可以给作者点个赞,或打赏杯咖啡;╮( ̄▽ ̄)╭ 如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O??? 如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡) 感谢各位大佬童鞋们的支持!( ´ ▽´ )ノ ( ´ ▽´)っ!!!

标签:00,TDengine,Database,show,之涛思,California,test,taos
From: https://blog.51cto.com/fish/6204081

相关文章

  • Nlog-动态修改DatabaseTarget,对数据库字符串进行加密
    privatestaticLoggerprocessLogger;//①LnProcessDBLog标签LogManager.GetLogger("LnProcessDBLog");②使用前先保证不为null,否则InitNlog();//修改Nlog.config配置的文件privatestaticvoidInitNlog(){LoggingConfigurationloggingConf......
  • InfluxDB vs TDengine,用数据“说”性能
    为了验证 TDengine 3.0的性能,我们使用第三方基准性能测试平台TSBS(TimeSeriesBenchmarkSuite)中针对DevOps的cpu-only五个场景作为基础数据集,在相同的AWS云环境下对TDengine3.0和InfluxDB1.8(该版本是InfluxDB能够运行TSBS框架的最新版本) 进行了对比分析。在......
  • DG搭建报错 ORA-16047: DGID mismatch between destination setting and target datab
    最近有需求要给数据库新搭一个DG变为一主两从,搭好之后测试发现一直没有同步,检查问题。从库一直等待接收71855号日志主库有归档日志发送失败的报错,可以看到归档到dest_2(原从库)是成功的,而到desc_3(新从库)则是失败的根据日志提示查看arc2进程的trace日志看到有ora-16058和ora-16047的报......
  • 【Database开发】国产数据库之涛思TDengine(开发入门)
    1、简介TDengine是一款开源、云原生的时序数据库,专为物联网、工业互联网、金融、IT运维监控等场景设计并优化。它能让大量设备、数据采集器每天产生的高达TB甚至PB级的数据得到高效实时的处理,对业务的运行状态进行实时的监测、预警,从大数据中挖掘出商业价值。2、开发指南......
  • Qt 连接 mysql 报错 QSqlDatabase: MYSQL driver not loaded
    参考: https://blog.csdn.net/o___GRoot/article/details/111320313 https://blog.csdn.net/sksukai/article/details/105344308 我的解决步骤:1.指定qmake qmake:couldnotexec‘/usr/lib/x86_64-linux-gnu/qt4/bin/qmake’:Nosuchfileordirectory需要修改如下......
  • Oracle Database 23c Free - Developer Release(免费的 Oracle 数据库开发者版本)
    免费的Oracle数据库开发者版本请访问原文链接:https://sysin.org/blog/oracle-database-23c-free/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgOracleDatabase23cFree-DeveloperRelease是一个全新的、免费的、业界领先的Oracle数据库,全世界各个行业的企......
  • 自增ID相同时报错: Database operation expected to affect 1 row(s) but actually aff
    数据库操作预计会影响1行,但实际上影响了2行。自加载实体以来,数据可能已被修改或删除。有关理解和处理乐观并发异常的信息,请参阅http://go.microsoft.com/fwlink/?LinkId=527962。项目场景:使用EF进行数据修改并保存_dbContext.SaveChanges();的时候出现错误问题描述:在EF里......
  • neondatabase 开源的k8s postgres autoscaling 工具
    autoscalingneondatabase开源的pg扩展工具(核心是解决neondatabase的一些问题),但是设计上有不少值得学习参考的地方参考架构  说明autoscaling设计上实现了自己的一个vm(支持在线迁移业务影响小),实现了自己的scheduler,也算是一个不错的k8s扩展开发参考项目参考资料......
  • 从建模思路看 MySQL 和 TDengine 哪个更适合处理量化交易场景下的海量时序数据
    在“量化投资分析”场景中,系统需要从数据接口、网络上等各个地方获取证券的信息,其中往往以“实时的价格变动信息”为主要数据,然后再对这些数据进行实时的分析与存储,供盘中和盘后使用。某企业遇到的问题如下:“我们要对500个证券品种进行监控,在开盘时,每5秒会更新一次价格数据。......
  • Graph database concepts
    Graphdatabaseconcepts图数据结构由nodes(离散对象)组成,这些nodes可以通过relationships(关系)连接起来。Example1.图结构的概念.xxxxxxxxxx ​pycharm图数据库模型由一下属性组成:Nodes描述域的实体(离散对象).Nodes可以有零个或多个labels来定义(分类)它们是什么......