Docker搭建一款开源的高性能云原生时序数据库

文摘   2025-02-09 08:00   广东  
| 项目介绍

TDengine 是一款开源、高性能、云原生的时序数据库 (Time-Series Database, TSDB)。TDengine 能被广泛运用于物联网、工业互联网、车联网、IT 运维、金融等领域。除核心的时序数据库功能外,TDengine 还提供缓存、数据订阅、流式计算等功能,是一极简的时序数据处理平台,最大程度的减小系统设计的复杂度,降低研发和运营成本。

| 功能特点


                          高性能与分布式架构:TDengine设计之初就以水平扩展和高可用为核心设计理念,具备强大的水平扩展能力,能够处理海量数据。其基于开源的时序数据库TDengineOSS,提供高性能、分布式的数据存储和基于SQL的查询服务,并有所增强。

                          云原生支持:TDengine 3.0版本及之后的版本成为了一款真正的云原生时序数据库,支持存储与计算分离,并升级了全新的流式计算引擎,有助于企业实现更高效的数据处理。它支持容器和Kubernetes部署,具备完善的可观测性,让系统的运营维护变得轻松简单。

                          极简时序数据平台:TDengine内置了消息队列、缓存、流式计算等功能,避免了应用集成Kafka、Redis、HBase、Spark等软件的复杂性,从而大幅降低系统的复杂度和应用开发及运营成本。用户只需很少的配置,即可实现工业数据源的ETL(提取、转换和加载)流程。

                          强大的分析能力:TDengine不仅支持标准SQL查询,还为时序数据特有的分析提供了SQL扩展。通过超级表、存储计算分离、分区分片、预计算、UDF等先进技术,TDengine展现出强大的数据分析能力。它能与众多第三方批分析、实时分析、报表工具、AI/ML工具、可视化工具无缝集成,如Grafana、帆软、永洪、PowerBI等。

                          核心开源:TDengine的核心代码,包括集群功能,均在开源协议下公开发布。它在GitHub网站全球趋势排行榜上多次位居榜首,显示出其受欢迎程度。同时,TDengine拥有一个活跃的开发者社区,为技术的持续发展和创新提供了有力支持。

                          | 优势


                                        数据汇聚:能消除数据孤岛,为决策者提供更好的宏观视图。TDengine能将来自各种类型数据源(包括PI System、MQTT、OPC等)的工业数据汇聚到一起,并可以进行数据的清洗、加工、转换工作,以保证入库数据的质量,便于集中监测、进行总体数据分析。

                                        数据存储:基于开源的时序数据库TDengineOSS,提供高性能、分布式的数据存储。

                                        数据分析:为工业数据提供了一个开放的解决方案,使用户能够利用现代的数据分析工具进一步挖掘数据的价值。

                                        数据分发:通过view的定义以及权限设置,既支持将一个数据库完全开放并设置读/写权限;也支持通过数据订阅方式安全、灵活地将库、超级表、一组或一张表或聚合处理后的数据分享出去,实时发送给另外一个应用。

                                        如需了解更多信息,可以访问其官方网站或查阅相关的技术文档。

                                        GitHub地址
                                        https://github.com/taosdata/TDengine

                                        Docker镜像

                                        https://hub.docker.com/r/tdengine/tdengine

                                        官方文档

                                        https://docs.taosdata.com/

                                        官方网站

                                        https://www.taosdata.com/

                                        | 安装部署


                                        TDengine支持本地安装和Docker安装,本文以Docker安装为例。

                                        安装Docker

                                        sudo apt updatesudo apt install -y docker.io docker-compose

                                        拉取镜像

                                        sudo docker pull tdengine/tdengine:latest

                                        启动服务

                                        sudo docker run -d -v ~/data/taos/dnode/data:/var/lib/taos \  -v ~/data/taos/dnode/log:/var/log/taos \  -p 6030:6030 -p 6041:6041 -p 6043:6043 -p 6044-6049:6044-6049 -p 6044-6045:6044-6045/udp -p 6060:6060 tdengine/tdengine

                                        端口说明:

                                        • 6030是服务端TCP端口。

                                        • 6041是REST服务端口。

                                        • 6043的taosKeeper使用端口。

                                        • 6044-6049是TCP端口为taosAdapter提供第三方应用接入所使用端口,可根据需要选择是否打开。

                                        • 6044和6045是UDP端口,为statsd和collectd格式写入接口,可根据需要选择是否打开。

                                        • 6060是taosExplorer使用端口。

                                        数据可视化可以使用DBeaver或qStudio连接数据库进行数据查看。同时支持多种编程语言连接,例如 C/C++、Java、Python、Go、Node.js、C#、Rust、Lua和 PHP等。 

                                        关注公众号,为你推荐更多原创干货!

                                        更多内容也可看笔者出版图书

                                        —————————

                                        幼稚猿
                                        分享各类技术资讯和教程,出版多本IT图书《Django+Vue系统架构设计与实现》、《Golang+Vue.js商城项目实战》等
                                         最新文章