InfluxDB集群功能不再开源,TDengine集群功能更胜一筹

从公司业务角度而言,InfluxDB 集群功能闭源无可厚非,这在一定程度上满足了企业发展商业化的需求,随着物联网的快速发展,时序数据库(Time Series Database)的应用空间会越来越可观,将集群功能闭源,从免费获取到收费获取,也成为 InfluxDB 寻求商业化变现的最有效途径。但从开源精神角度来评估,前期靠开源吸引大众的目光,靠此方式积累到一定的知名度后又闭源,对于一众投入关注和精力的开发者来说,也是一种无形的伤害。

而且从企业客户的角度而言,在做选型时,大家首先考虑的还是数据库产品的易用性与广泛性,InfluxDB 集群功能闭源无疑将会损失很大一批用户,在一定程度上降低了产品的广泛性和关注度,InfluxDB 此举可谓是喜忧参半。

如果大家想体验一款集群等核心功能全部开源的时序数据库的话,可以试试 TDengine。很多用户也对比过 TDengine 和 InfluxDB,多项测试表明,前者的单机性能等多个指标就明显优于后者,相较于 InfluxDB 集群功能闭源,TDengine 集群功能全部开源,可以直接进行测试和体验,这也是很大的一个加分项。

截取了两篇 TDengine 的 usecase 文章节选放在了下面。

和利时的“工业互联网平台”项目

同等条件下,TDengine 的压缩率最高,数据占用的存储空间最小;在原始数据查询上,OpenTSDB 最慢,TDengine 与 HolliTSDB 在伯仲之间;在聚合查询操作上,TDengine 最快,HolliTSDB 的速度和 InfluxDB 相当,OpenTSDB 最慢。同时,InfluxDB 只能单机部署,其集群版本并未开源,且查询性能存在瓶颈,其 QPS 约为 30-50。从性能测试结果来看,我们选择 TDengine Database 的原因主要源于以下几点:

  • TDengine 在查询性能维度上的表现非常优异,满足了我们的业务查询需求
  • 集群功能开源,方便横向扩展,更弹性
  • 在开源热潮之下,支持如 TDengine 一般的国产开源数据库、操作系统、中间件等也是企业的必修课

最终我们决定接入 TDengine,以享受更多元的本地化支持和响应。

吉科软的“车辆轨迹定位监控”项目

我司对业界主流的时序数据库做了分析和测试:

  • InfluxDB:由 InfluxData 开发的开源时序型数据。它由 Go 写成,着力于高性能地查询与存储时序型数据。被广泛应用于存储系统的监控数据,IoT 行业的实时数据等场景。缺点是开源版本只支持一个节点,InfluxDB 集群功能没有开源,存在前后版本兼容性问题,非国产化产品。
  • OpenTSDB:基于 HBase 的分布式、可伸缩的时间序列数据库。作为基于通用存储开发的时序数据库典型代表,起步比较早,在时序数据库领域的认可度相对较高,但 HBase 成本高的问题无法免除。
  • TDengine国产开源时序数据库,使用类 SQL 查询语言来插入或查询数据;通过连续查询,支持基于滑动窗口的流式计算;引入超级表,让设备之间的数据聚合通过标签变得简单灵活;内嵌缓存机制,每台设备的最新状态或记录都可快速获得;分布式架构,支持线性扩展,以保证任何规模的数据量都可以处理;支持多副本,无单点故障,保证系统的高可用与高可靠。这些功能和特性都非常符合我们的需求。

但事实上,做过调研的远不止这两家,基本企业客户在做调研时都会将 InfluxDB 作为首选 TSDB 之一,但最终无疑都会被 TDengine 的集群开源和更胜一筹的性能所吸引。