开源
TDengine:针对工业/IOT物联网的云原生时序数据库
来源:元经纪     阅读:939
网站管理员
发布于 2023-01-31 04:50
查看主页

概述

TDengine 是一个开源、高性能、云原生时序数据库,针对物联网 (IoT)、联网汽车和工业物联网进行了优化。它能够高效、实时地摄取、处理和监控每天由数十亿个传感器和数据收集器生成的 TB 甚至 PB 级数据。

TDengine区别于其他时序数据库有以下优势:

安装

[hidecontent type="logged" desc="隐藏内容:登录后可查看"]

目前TDengine服务器支持运行在Linux/Windows/macOS系统上。任何应用程序也可以选择taosAdapter提供的RESTful接口来连接taosd服务。TDengine支持X64/ARM64 CPU,未来将支持MIPS64、Alpha64、ARM32、RISC-V等CPU架构。

您可以选择通过源码、容器、安装包或Kubernetes安装。本快速指南仅适用于从源安装。

TDengine 提供了一些有用的工具,例如 taosBenchmark(被命名为 taosdemo)和 taosdump。它们是 TDengine 的一部分。TDengine编译默认不包含taosTools。您可以使用cmake .. -DBUILD_TOOLS=true使它们与 TDengine 一起编译。

要构建 TDengine,请在项目目录中使用CMake 3.0.2 或更高版本。

安装构建工具

Ubuntu 18.04 及以上版本或 Debian

sudo apt-get install -y gcc cmake build-essential git libssl-dev

安装 taosTools 的构建依赖项

要在 Ubuntu/Debian 上构建taosTools,需要安装以下软件包。

sudo apt install build-essential libjansson-dev libsnappy-dev liblzma-dev libz-dev zlib1g pkg-config

CentOS 7.9

sudo yum install epel-release
sudo yum update
sudo yum install -y gcc gcc-c++ make cmake3 git openssl-devel
sudo ln -sf /usr/bin/cmake3 /usr/bin/cmake

CentOS 8 & Fedora

sudo dnf install -y gcc gcc-c++ make cmake epel-release git openssl-devel

在 CentOS 上安装 taosTools 的构建依赖

CentOS 7.9

sudo yum install -y zlib-devel zlib-static xz-devel snappy-devel jansson jansson-devel pkgconfig libatomic libatomic-static libstdc++-static openssl-devel

CentOS 8/Rocky Linux

sudo yum install -y epel-release
sudo yum install -y dnf-plugins-core
sudo yum config-manager --set-enabled powertools
sudo yum install -y zlib-devel zlib-static xz-devel snappy-devel jansson jansson-devel pkgconfig libatomic libatomic-static libstdc++-static openssl-devel

注意:由于snappy缺少pkg-config支持(参考链接),导致cmake提示libsnappy not found。但是 snappy 仍然运行良好。

如果PowerTools安装失败,可以尝试使用:

sudo yum config-manager --set-enabled powertools

苹果系统

brew install argp-standalone pkgconfig

设置golang环境

TDengine包含了一些Go语言开发的taosAdapter等组件。golang环境设置请参考golang.org官方文档。

请使用 1.14+ 版本。对于中国用户,我们建议使用代理加速包下载。

go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

默认不会构建taosAdapter,但是你可以使用下面的命令构建taosAdapter作为RESTful接口的服务。

cmake .. -DBUILD_HTTP=false

设置 rust 环境

TDengine 包含了一些使用 Rust 语言开发的组件。Rust 环境设置请参考 rust-lang.org 官方文档。

获取源代码

首先,您可以从 github 上克隆源代码:

git clone https://github.com/taosdata/TDengine.git
cd TDengine

您可以修改文件 ~/.gitconfig 以使用 ssh 协议而不是 https 以获得更好的下载速度。您需要先将 ssh 公钥上传到 GitHub。详细请参考GitHub官方文档。

[url "git@github.com:"]
    insteadOf = https://github.com/

特别提示

JDBC 连接器Go 连接器Python 连接器Node.js 连接器C# 连接器Rust 连接器Grafana 插件已移至独立存储库。

搭建TDengine

在 Linux 平台上

您可以运行 bash 脚本build.sh来构建 TDengine 和 taosTools,包括 taosBenchmark 和 taosdump,如下所示:

./build.sh

相当于执行以下命令:

mkdir debug
cd debug
cmake .. -DBUILD_TOOLS=true
make

您可以使用 Jemalloc 作为内存分配器而不是 glibc:

apt install autoconf
cmake .. -DJEMALLOC_ENABLED=true

TDengine构建脚本可以检测主机在X86-64、X86、arm64平台上的架构。如果检测结果不正确,你也可以像 aarch64 一样指定 CPUTYPE 选项:

aarch64:

cmake .. -DCPUTYPE=aarch64 && cmake --build .

在 Windows 平台上

如果您使用 Visual Studio 2013,请通过执行“cmd.exe”打开一个命令窗口。请在执行 vcvarsall.bat 时为 64 位 Windows 指定“amd64”或为 32 位 Windows 指定“x86”。

mkdir debug && cd debug
"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" < amd64 | x86 >
cmake .. -G "NMake Makefiles"
nmake

如果您使用 Visual Studio 2019 或 2017:

请通过执行“cmd.exe”打开一个命令窗口。请在执行 vcvarsall.bat 时为 64 位 Windows 指定“x64”或为 32 位 Windows 指定“x86”。

mkdir debug && cd debug
"c:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" < x64 | x86 >
cmake .. -G "NMake Makefiles"
nmake

或者,您只需单击 Windows 开始 ->“Visual Studio < 2019 | 2017 >”文件夹 ->“x64 Native Tools Command Prompt for VS <2019 | 2017 >”或“x86 Native Tools Command Prompt for VS”即可打开命令窗口< 2019 | 2017 >”看你的Windows是什么架构,然后执行命令如下:

mkdir debug && cd debug
cmake .. -G "NMake Makefiles"
nmake

在 macOS 平台上

请安装 XCode 命令行工具和 cmake。在 Catalina 和 Big Sur 上使用 XCode 11.4+ 验证。

mkdir debug && cd debug
cmake .. && cmake --build .

安装中

在 Linux 平台上

搭建成功后,可以通过以下方式安装TDengine

sudo make install

用户可以在目录和文件部分找到有关系统上安装的目录的更多信息。

从源代码安装也会为TDengine配置服务管理,用户也可以选择从包安装

要在安装后启动服务,请在终端中使用:

sudo systemctl start taosd

然后用户可以使用 TDengine CLI 连接 TDengine 服务器。在终端中,使用:

taos

如果TDengine CLI连接服务器成功,会打印欢迎信息和版本信息。否则,将显示一条错误消息。

在 Windows 平台上

构建成功后,可以通过以下方式安装TDengine:

nmake install

在 macOS 平台上

构建成功后,可以通过以下方式安装TDengine:

sudo make install

用户可以在目录和文件部分找到有关系统上安装的目录的更多信息。

从源代码安装也会为TDengine配置服务管理,用户也可以选择从包安装

要在安装后启动服务,双击 /applications/TDengine 启动程序,或在终端中使用:

launchctl start com.tdengine.taosd

然后用户可以使用 TDengine CLI 连接 TDengine 服务器。在终端中,使用:

taos

如果TDengine CLI连接服务器成功,会打印欢迎信息和版本信息。否则,将显示一条错误消息。

快速运行

如果您不想将 TDengine 作为服务运行,您可以在当前 shell 中运行它。例如搭建完成后快速启动一个TDengine服务器,在终端运行如下命令:(我们以Linux为例,Windows下的命令为taosd.exe

./build/bin/taosd -c test/cfg

在另一个终端,使用 TDengine CLI 连接服务器:

./build/bin/taos -c test/cfg

选项“-c test/cfg”指定系统配置文件目录。

试用TDengine

从 TDengine CLI 运行 SQL 命令很容易,这与其他 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   |
===================================
 19-07-15 00:00:00.000|         10|
 19-07-15 01:00:00.000|         20|
Query OK, 2 row(s) in set (0.001700s)

[/hidecontent]

   
免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 开源
2月份开的标,山东潍坊烟草有限公司为何4月份才在官网公示?
小米SU7城市销量榜:杭州人买的最多 上海、深圳包揽亚季军
中国电子云数据港、数据流通服务平台正式发布
人形机器人加速商业化落地(产经观察·从新兴产业看新质生产力)
尊界S800核心参数曝光:增程版配63度高能电池、纯电331公里

首页

分类

定制方案

消息

我的