作为一个高性能、分布式、支持 SQL 的时序数据库 (Time Series Database,TSDB),TDengine 的典型适用场景包括但不限于 IoT、工业互联网、车联网、IT 运维、能源、金融证券等领域。需要指出的是,因充分利用了时间序列数据的特点,TDengine 是一款针对时间序列数据场景设计的专用数据库和专用大数据处理工具,它无法用来处理网络爬虫、微博、微信、电商、ERP、CRM 等通用型数据。本文对适用场景做更多详细的分析。
数据源特点和需求
从数据源角度,设计人员可以从下面几个角度分析 TDengine 在目标应用系统里面的适用性。
- 非常适用总体数据量巨大的数据源。TDengine 在容量方面提供出色的水平扩展功能,并且具备匹配高压缩的存储结构,达到业界最优的存储效率。
- 非常适用数据输入速度偶尔或者持续巨大的数据源。TDengine 的性能大大超过同类产品,可以在同样的硬件环境下持续处理大量的输入时间序列数据,并且提供很容易在用户环境里面运行的性能评估工具。
- 对数据源数目巨大非常适用。TDengine 设计中包含专门针对大量数据源的优化,包括数据的写入和查询,尤其适合高效处理海量(千万或者更多量级)时间序列数据的数据源。
系统架构要求
- 非常适用于要求简单可靠的系统架构。TDengine 的系统架构非常简单可靠,自带消息队列,缓存,流式计算,监控等功能,无需集成额外的第三方产品。
- 非常适用于要求容错和高可靠的系统架构。TDengine 的集群功能,自动提供容错灾备等高可靠功能。
- 非常适用于标准化非常规范的系统架构。TDengine 使用标准的 SQL 语言提供主要功能,遵守标准化规范。
系统功能要求
- 可能适用于要求完整的内置数据处理算法的系统。TDengine 的实现了通用的数据处理算法,但是还没有做到妥善处理各行各业的所有要求,因此特殊类型的处理还需要应用层面处理。
- 可能适用于需要大量的交叉查询处理的系统。这种类型的处理更多应该用关系型数据系统处理,或者应该考虑 TDengine 和关系型数据系统配合实现系统功能。
系统性能需求
- 非常适用于要求较大的总体处理能力的系统。TDengine 的集群功能可以轻松地让多服务器配合达成处理能力的提升。
- 非常适用于要求高速处理数据的系统。TDengine 的专门为时间序列数据的存储和处理的设计,一般可以让系统得到超出同类产品多倍数的处理速度提升。
- 非常适用于要求快速处理小粒度数据的系统。这方面 TDengine 性能可以完全对标关系型和 NoSQL 型数据处理系统。
系统维护需求
非常适用于要求可靠运行、要求运维学习成本可控的系统。TDengine 的系统架构非常稳定可靠,日常维护也简单便捷,对维护人员的要求简洁明了,最大程度上杜绝人为错误和事故。