TDengine 产品由哪些组件构成

server/2025/2/13 11:51:55/

目 录

  • 背景
  • 产品生态
  • taosd
  • taosc
  • taosAdapter
  • taosKeeper
  • taosExplorer
  • taosX
  • taosX Agent
  • 应用程序或第三方工具

背景

了解一个产品,最好从了解产品包括哪些内容开始,我这里整理了一份儿 TDegnine 产品包括有哪些组件,每个组件作用是什么的说明,希望能够让大家从整体上对 TDengine 有个粗略认识

产品生态

在 TDengine 产品中,taosd 组件是核心数据库服务组件,其它组件都是服务于核心组件,对外提供不同的接口及功能,共同形成了 TDengine 的生态系统,如下图:

在这里插入图片描述

taosd

核心数据库服务组件, 以服务进程方式存在,运行在服务端,进程名 taosd 。Linxu 操作系统中可以使用 systemctl start/stop taosd 启动及停止服务。它以单进程多线程模式扩展并发能力。平常听到的 dnode 就是指这个进程, 功能包括管理模块 mnode,数据分片 vnode, 查询模块 qnode,流计算模块 mnode 及订阅模块,预写日志 WAL 等, 另外进程为了方便查看服务运行信息,提供了命令行参数,可以执行 taosd -h 查看

taosd 进程的日志默认存储在 /var/log/taos/ 目录下,方便用户进行日志查看和管理。

taosc

taosc 是 TDengine 的客户端程序,以动态库方式存在, Linux 下文件名为 libtaos.so,对外提供了一组 API 接口函数,只是此模块是与 taosd 直接交互的,其它所有组件都是通过此组件与 taosd 交互的。常见的使用此动态库的组件包括 taos-CLI 命令行程序,各种语言连接器(JAVA Python Rust Go 等)的 Native 连接, 还有实现 Restful 及 Websocket 连接的 taosAdapter 组件,也是通过此组件与 taosd 进行交互的。

taosAdapter

taosAdapter 是 TDengine 安装包中的一个标准组件, 运行在服务器端,进程名 taosAdapter,以服务方式存在, 可以通过 systemctl start/stop taosadapter 启动及停止服务,充当着 TDengine 集群与应用程序之间的桥梁和适配器角色。它支持用户通过 RESTful 接口和 WebSocket 连接访问TDengine 服务,实现数据的便捷接入和处理。

taosAdapter 能够与各种数据收集代理工具(如 Telegraf、StatsD、collectd 等)无缝对接,从而将数据导入 TDengine。此外,它还提供了与 InfluxDB/OpenTSDB 兼容的数据写入接口,使得原本使用 InfluxDB/OpenTSDB 的应用程序能够轻松移植到 TDengine 上,无须进行大量修改。

通过 taosAdapter,用户可以灵活地将 TDengine 集成到现有的应用系统中,实现数据的实时存储、查询和分析。

taosAdapter 提供了以下主要功能:

  • RESTful 方式连接 TDengine;
  • WebSocket 方式连接 TDengine;
    同时还提供了额外一些功能,如:
  • 无缝连接到 Telegraf;
  • 无缝连接到 collectd;
  • 无缝连接到 StatsD;
  • 支持 Prometheus remote_read 和 remote_write。

taodAdapter 兼容 InfluxDB v1 格式写入, 兼容 OpenTSDB JSON 和 Telnet 格式写入
各种语言连接器(JAVA Python Rust Go C# 等)的 RESTFul 连接方式与 WebSocket 连接方式都调用的 taosAdapter 提供的接口完成的

taosAdapter 提供的最便捷的功能是各语言连接器当使用 Restful 及 WebSocket 连接 TDegnine 时,客户端机器上无需再安装 TDegnine 的客户端安装包了

taosKeeper

taosKeeper 是 TDengine 3.0 版本中新增的监控指标导出工具,旨在方便用户对TDengine 的运行状态和性能指标进行实时监控。通过简单的配置,TDengine 能够将其运行状态、指标等信息上报给 taosKeeper。当接收到监控数据后,taosKeeper 会利用 taosAdapter 提供的 RESTful 接口,将这些数据存储到 TDengine 中。

taosKeeper 的一个重要价值在于,它能够将多个甚至一批 TDengine 集群的监控数据集中存储在一个统一的平台上。这使得监控软件能够轻松获取这些数据,从而实现对 TDengine 集群的全面监控和实时分析。通过 taosKeeper,用户可以更加便捷地掌握TDengine 的运行状况,及时发现并解决潜在问题,确保系统的稳定性和高效性。

taosExplorer

为了简化用户对数据库的使用和管理,TDengine Enterprise 引入了一个全新的可视化组件—taosExplorer。这个工具为用户提供了一个直观的界面,方便用户轻松管理数据库系统中的各类元素,如数据库、超级表、子表等,以及它们的生命周期。

通过 taosExplorer,用户可以执行 SQL 查询,实时监控系统状态、管理用户权限、完成数据的备份和恢复操作。此外,它还支持与其他集群之间的数据同步、导出数据,以及管理主题和流计算等功能。

值得一提的是,taosExplorer 的社区版与企业版在功能上有所区别。企业版提供了更丰富的功能和更高级别的技术支持,以满足企业用户的需求。具体的差异和详细信息,用户可以查阅 TDengine 的官方文档。

taosX

taosX 作为 TDengine Enterprise 的数据管道功能组件,旨在为用户提供一种无须编写代码即可轻松对接第三方数据源的方法,实现数据的便捷导入。目前,taosX 已支持众多主流数据源,包括 AVEVA PI System、AVEVA Historian、OPC-UA/DA、InfluxDB、OpenTSDB、MQTT、Kafka、CSV、TDengine 2.x、TDengine 3.x、MySQL、PostgreSQL和 Oracle 等。

在实际使用中, 用户通常无须直接与 taosX 进行交互。 相反, 他们可以通 过taosExplorer 提供的浏览器用户界面轻松访问和使用 taosX 的强大功能。这种设计简化了操作流程,降低了使用门槛,使得用户能够更加专注于数据处理和分析,从而提高工作效率。

taosX Agent

taosX Agent 是 TDengine Enterprise 数据管道功能的重要组成部分,它与 taosX 协同工作,负责接收 taosX 下发的外部数据源导入任务。taosX Agent 能够启动连接器或直接从外部数据源获取数据,随后将采集的数据转发给 taosX 进行处理。

在边云协同场景中,taosX Agent 通常部署在边缘侧,尤其适用于那些外部数据源无法直接通过公网访问的情况。通过在边缘侧部署 taosX Agent,可以有效地解决网络限制和数据传输延迟等问题,确保数据的实时性和安全性。

应用程序或第三方工具

通过与各类应用程序、可视化和 BI(Business Intelligence,商业智能)工具以及数据源集成,TDengine 为用户提供了灵活、高效的数据处理和分析能力,以满足不同场景下的业务需求。应用程序或第三方工具主要包括以下几类。

  1. 应用程序

这些应用程序负责向业务集群写入、查询业务数据以及订阅数据。应用程序可以通过以下 3 种方式与业务集群进行交互。

  • 基于 taosc 的应用程序:采用原生连接的应用程序,直接连接到业务集群,默认端口为 6030。
  • 基于 RESTful 连接的应用程序:使用 RESTful 接口访问业务集群的应用程序,需要通过 taosAdapter 进行连接,默认端口为 6041。
  • 基于 WebSkcket 连接的应用程序:采用 WebSocket 连接的应用程序,同样需要通过 taosAdapter 进行连接,默认端口为 6041。
  1. 可视化/BI 工具

TDengine 支持与众多可视化及 BI 工具无缝对接,如 Grafana、Power BI、 Apache SuperSet 以及国产的可视化和 BI 工具。此外,用户还可以利用 Grafana 等工具来监测 TDengine 集群的运行状态。

  1. 数据源

TDengine 具备强大的数据接入能力,可以对接各种数据源,如 MQTT、OPC-UA/DA、Kafka、FLINK、AVEVA PI System、AVEVA Historian 等。这使得 TDengine 能够轻松整合来自不同数据源的数据,为用户提供全面、统一的数据视图。


http://www.ppmy.cn/server/167314.html

相关文章

【算法】动态规划专题⑪ —— 区间DP python

目录 引入进入正题回归经典总结 引入 区间动态规划(区间DP)适用于解决涉及区间最优化的经典问题,如石子合并、最长回文子序列等。 进入正题 石子合并 https://www.acwing.com/problem/content/284/ 有 N 堆石子排成一排,其编号为…

百度舆情优化:百度下拉框中的负面如何清除?

百度的下拉词、相关搜索、大家还在搜有负面词条,一直是企业公关经理头疼的问题,小马识途营销顾问深耕网络营销领域十几年,对百度SEO优化、百度下拉框、百度相关搜索、自媒体营销、短视频营销等等技巧方面积累了一定的方法和技巧。 对于百度下…

调用DeepSeek官方的API接口

效果 前端样式体验链接:https://livequeen.top/deepseekshow 准备工作 1、注册deepseek官网账号 地址:DeepSeek 点击进入右上角【API开放平台】,并进行账号注册。 2、注册完成后,依次点击【API keys】-【生成API key】&#x…

第六届MathorCup高校数学建模挑战赛-A题:淡水养殖池塘水华发生及池水自净化研究

目录 摘要 1 问题的重述 2 问题的分析 2.1 问题一的分析 2.2 问题二的分析 2.3 问题三的分析 2.4 问题四的分析 2.5 问题五的分析 3. 问题的假设 4. 符号说明 5. 模型的建立与求解 5.1 问题一的建模与求解 5.1.1 分析对象与指标的选取 5.1.2 折线图分析 5.1.3 相关性分析 5.1.4…

高效利用Python爬虫开发批量获取商品信息

在当今电商行业竞争激烈的环境下,精准且高效地获取商品信息对于商家和数据分析师来说至关重要。无论是进行市场调研、优化商品布局,还是制定竞争策略,商品信息的全面掌握都是关键。Python爬虫技术以其强大的功能和灵活性,成为批量…

深入浅出:Python 中的异步编程与协程

引言 大家好,今天我们来聊聊 异步编程 和 协程,这是近年来编程语言领域中的热点话题之一,尤其在 Python 中,它作为一种全新的编程模型,已经成为处理 IO密集型 任务的强力工具。尽管很多人对异步编程望而却步&#xff0…

Redis07 - Redis底层数据结构

Redis底层数据结构 文章目录 Redis底层数据结构一:对象机制详解二:SDS 简单动态字符串三:压缩列表zipList结构 四:跳表 一:对象机制详解 String类型 - 简单动态字符串SDSList类型 - 双向链表 & 压缩列表Set类型 - …

贪心算法_翻硬币

蓝桥账户中心 依次遍历 不符合条件就反转 题目要干嘛 你就干嘛 #include <bits/stdc.h>#define endl \n using namespace std;int main() {ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); string s; cin >> s;string t; cin >> t;int ret 0;for ( i…