首页 > 其他分享 >初识TDengine

初识TDengine

时间:2022-11-21 10:37:00浏览次数:72  
标签:tdengine TDengine 数据库 初识 SQL docker ......

1. 几个概念

TSDB: Time Series Database,时序数据库。非关系型数据库,主要用于处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。时序数据库的特点在于:写多于读、顺序写、很少更新、区块删除。因此时序数据库非常契合那些产生频率快、严重依赖于采集时间、测点多信息量大的工业数据,比如:电力、化工、气象等行业。
SQL:Structured Query Language,结构化查询语言。是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;简单点讲就是操作数据库的一种语言。

2. TDengine简介

开发公司是涛思数据,国产的开源时序数据库,具有支持SQL、缓存、流式计算、订阅、集群部署等特点。

下面是2022年11月在DB-Engines网站上时序数据库的排名,可以看到是有进步的。

img

3. 安装

TDengine支持多种方式的安装,如果不需要他的造数据的demo的话,推荐使用docker安装,安装包的安装会带有一个名为taosBenchmark的产品性能测试工具,它可以模拟生成数据,测试TDengine的插入、查询和订阅等功能的性能。

这里贴一下docker安装的步骤:

如果已经安装了 Docker,首先拉取最新的 TDengine 容器镜像:

docker pull tdengine/tdengine:latest

或者指定版本的容器镜像:

docker pull tdengine/tdengine:3.0.1.4

然后只需执行下面的命令:

docker run -d -p 6030:6030 -p 6041:6041 -p 6043-6049:6043-6049 -p  6043-6049:6043-6049/udp tdengine/tdengine

更多的安装方式请参考官方文档

4. 几个概念

和关系型数据库的库的概念没有什么区别,库里面存放的是数据表。

超级表 STable

因为TSDB主要的应用场景在工业数据的采集,那么自然会存在许多类型相同的设备需要被采集数据。超级表可以简单看作设备类型的抽象。

子表 Subtable

如果说超级表是模板,代表某种设备类型,那么子表就是具体的设备,子表依赖于超级表。

采集量(Metric)和 标签(Label/Tag)

一个设备需要被监控采集的数据,会动态变化的就是采集量;静态不变的数据比如设备名称等就是标签。

这些只是一部分简化后的概念,更具体的请查阅官方文档

5. 简单使用SQL操作数据库

在2中我们提到TDengine是支持SQL进行操作的,现在以docker安装的TDengine为例,我们简单说一下怎么用SQL操作TDengine。
首先我们需要进入TDengine的命令行操作界面。

# 进入容器内部
docker exec -it $容器ID bash

# 执行taos命令,进入命令行模式
taos

会出现如下界面:

root@9d229d2bd7b0:~# taos
Welcome to the TDengine Command Line Interface, Client Version:3.0.1.6
Copyright (c) 2022 by TDengine, all rights reserved.

   ******************************  Tab Completion  **********************************
   *   The TDengine CLI supports tab completion for a variety of items,             *
   *   including database names, table names, function names and keywords.          *
   *   The full list of shortcut keys is as follows:                                *
   *    [ TAB ]        ......  complete the current word                            *
   *                   ......  if used on a blank line, display all valid commands  *
   *    [ Ctrl + A ]   ......  move cursor to the st[A]rt of the line               *
   *    [ Ctrl + E ]   ......  move cursor to the [E]nd of the line                 *
   *    [ Ctrl + W ]   ......  move cursor to the middle of the line                *
   *    [ Ctrl + L ]   ......  clear the entire screen                              *
   *    [ Ctrl + K ]   ......  clear the screen after the cursor                    *
   *    [ Ctrl + U ]   ......  clear the screen before the cursor                   *
   **********************************************************************************

Server is Community Edition.

下面是简单的SQL示例:

# 展示数据库
show databases;

# 创建数据库
CREATE DATABASE power KEEP 365 DURATION 10 BUFFER 16 WAL_LEVEL 1;

标签:tdengine,TDengine,数据库,初识,SQL,docker,......
From: https://www.cnblogs.com/datangguanjunhou/p/16910546.html

相关文章

  • 6000字带你初识Python面向对象
    ​......
  • SpringMVC - 初识Springmvc
    一、SpringMVC案例在springmvc配置文件中配置扫描器<!--base-package:表示扫描路径--!><context:component-scanbase-package="com.xin"></context:component-scan>创......
  • 29-30 初识索引 重新设置索引
     -----------------------------------------------------------------------------------------------------------------------------------------------#重新设置索......
  • 初识ROS的tower功能包
    1.简介用于腿式机器人轨迹优化的轻量级、基于特征的C++库。该库提供了可用于表示腿式运动问题的变量、成本和约束的实现。然后可以使用现成的求解器(例如,使用通用优化器接......
  • 初识EasyX图形编程
    相关视频——【C/C++/EasyX】学编程,做游戏,小白快速入门图形编程,零基础入门到精通,学习就是这么快乐_哔哩哔哩(゜-゜)つロ干杯~-bilibili我的小站——半生瓜のblog,同步更新......
  • python - 初识python
    python2中文需要加字符编码样例:#-*-coding:utf-8-*-python3不需要加python变量引用用括号例子:name="你好,世界"print(name)%s变量字符串%d变量字符数字打......
  • 初识Flink简单介绍
    Flink是实时计算框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。有界流和无界流都是基于Datastream这个Flink的编程模型。Flink自己管理内存机制,批......
  • 三分钟梳理TDengine安装部署的逻辑
      ​小T导读:TDengine,是涛思数据面对高速增长的物联网大数据市场和技术挑战推出的创新性的大数据处理产品,除却读写性能、存储压缩能力强大之外,还有安装简单、操作难......
  • 初识RocketMQ基础概念(一)
    20年入职ryx公司后,刚好接触到一个线上问题,遂开了一个研究课题,一场针对ApacheRocketMQ的无烟战争正式打开。一开始刚接触这玩意,只是通过百度搜索简单了解下,后来发现很多文......
  • 初识Linux(九)------ 学习Shell Scripts
    基本上,shellscript有点像是早期的批处理文件,亦即是将一些指令汇整起来一次执行,但是Shellscript拥有更强大的功能,那就是他可以进行类似程序(program)的编写,并且不......