报告概述

本报告是一份面向运维工程师、开发工程师和架构师的技术实践文档,系统介绍了如何将九种主流数据采集和监控工具(包括Prometheus、Telegraf、collectd、StatsD、icinga2、TCollector、EMQX Broker、HiveMQ Broker以及Kafka Connector)与TDengine TSDB进行深度集成。报告覆盖了每种工具的配置步骤、验证方法和最佳实践,旨在帮助读者构建高效、可靠的数据基础设施,解决传统方案在存储成本、查询性能、运维复杂度及实时性方面的挑战。通过统一的数据存储和查询接口,读者可以显著提升系统性能、降低成本并加速业务创新。

报告的核心结论

TDengine可大幅提升时序数据存储效率与查询性能

报告指出,TDengine通过列式存储和高效压缩算法,相比传统方案可节省90%以上的存储空间,在数十亿条数据规模下复杂时间范围查询响应时间缩短至毫秒级,写入吞吐量支持百万级数据点/秒,为实时监控和决策提供可靠支撑。

通过标准化接口无缝对接Prometheus监控体系

TDengine通过支持Prometheus的remote_write和remote_read接口,允许用户将Prometheus采集的指标数据直接存储到TDengine中,并利用其高效查询能力。配置简单,仅需修改prometheus.yml中的URL和认证信息即可实现数据写入与读取,验证方法示例表明数据可正确存入和查询。

支持多种数据采集工具实现统一存储

Telegraf、collectd、StatsD、icinga2、TCollector等流行采集工具均可通过简单配置将数据写入TDengine。报告针对每种工具提供了详细的前置条件、配置步骤和验证方法,并支持自动创建数据库与表,大大降低了集成复杂度和运维负担。

通过Kafka和Flink连接器实现流式数据集成

TDengine提供了Kafka Connect插件(Source和Sink)以及Flink连接器,支持将Kafka中指定topic的数据实时同步到TDengine,或将TDengine中的数据推送至Kafka。Flink连接器支持批流一体化,提供至少一次语义保证,可满足复杂数据处理场景。

报告回答的关键问题

如何将Prometheus数据写入TDengine?

Prometheus通过remote_write和remote_read接口与TDengine集成。只需在prometheus.yml中配置taosAdapter的REST地址(默认端口6041)和数据库名称,并设置认证信息,重启Prometheus即可。写入的数据在TDengine中自动创建`prometheus_data`数据库和`metrics`超级表,可通过CLI或PromQL查询。

Telegraf如何与TDengine集成?

Telegraf通过outputs.http插件以InfluxDB行协议格式将数据发送到taosAdapter。在telegraf.conf中配置url为http://<taosAdapter_host>:6041/influxdb/v1/write?db=<database>,并设置用户名、密码和数据格式为influx。重启Telegraf后,数据自动存入TDengine指定数据库,自动建表。

TDengine支持哪些常见数据采集工具?

报告明确支持Prometheus、Telegraf、collectd、StatsD、icinga2、TCollector、EMQX Broker、HiveMQ Broker等九种主流工具。每种工具都提供了从安装配置到验证的完整指南,并支持自动创建数据库和表,实现对多样数据源的统一存储与查询。

Kafka如何与TDengine实现数据同步?

通过TDengine Kafka Connect插件,包括Sink Connector(将Kafka数据写入TDengine)和Source Connector(将TDengine数据写入Kafka)。用户只需配置连接参数、topic、数据库等信息,插件内部使用无模式写入接口支持InfluxDB、OpenTSDB等格式。Source Connector支持历史数据批量拉取和增量实时同步,并自动监控表变化。

报告中的代表性数据

90%以上

存储空间节省比例

无具体时间,TDengine的列式存储和高效压缩算法相比传统方案可节省90%以上的存储空间,具体效果因数据特征而异。

毫秒级

查询响应时间

数十亿条数据规模,即使在数十亿条数据的规模下,复杂时间范围查询也能在毫秒级别完成。

百万级数据点/秒

写入吞吐量

无具体时间,TDengine支持百万级数据点/秒的实时写入,满足最严苛的实时监控需求。

以上数据根据报告摘要整理,具体统计口径和数值请以完整报告原文为准。

完整报告包含什么

  • Prometheus集成配置:详细介绍如何通过remote_write和remote_read接口将Prometheus数据存储到TDengine,包括创建数据库、配置taosAdapter、修改prometheus.yml以及使用CLI和promql-cli验证写入和读取。
  • Telegraf集成配置:基于outputs.http插件,将Telegraf采集的系统指标以InfluxDB行协议格式发送至taosAdapter,自动创建telegraf数据库及cpu、mem等超级表,并提供验证示例。
  • collectd集成配置:支持write_tsdb插件和二进制数据两种方式,配置taosAdapter的OpenTSDB Telnet端口,修改collectd.conf后重启即可,可自动创建collectd数据库和多个超级表。
  • StatsD、icinga2、TCollector集成配置:StatsD通过repeater后端转发至taosAdapter UDP端口;icinga2使用opentsdb-writer指向taosAdapter;TCollector修改源代码中的host和port为taosAdapter地址。均提供验证方法。
  • EMQX Broker集成:基于规则引擎将MQTT消息通过WebHook写入TDengine,无需编码。详细演示了创建数据库表、配置EMQX规则、编写模拟MQTT客户端进行端到端测试的全过程。
  • HiveMQ Broker集成:通过HiveMQ extension - TDengine插件保存数据,报告引用外部文档,但在材料中提及。
  • Kafka Connector集成:包含Source和Sink两个插件,支持InfluxDB、OpenTSDB等数据格式。提供详细的前置条件、安装编译、配置示例、写入和同步验证步骤,以及性能调优建议。
  • Flink Connector集成:支持Flink 1.19+,提供Sink功能,可将RowData或自定义类型数据写入TDengine超级表或普通表;同时支持Table API方式,通过SQL语句直接写入。文档包含连接参数、配置属性和多个代码示例。

本页内容由川海智库整理,用于帮助读者快速了解报告主题、核心观点和主要内容。由于报告量大、人工能力有限,部分观点、数据、统计口径或表述可能存在偏差,具体内容请以完整报告原文为准。

相关报告