你该知道的时序数据库技术

什么是时序数据

时序数据是随时间不断产生的一系列数据,例如持续监控的气象变化数据、股市交易记录、应用监控数据等,通常一个时序数据点可以由时序指标(metric)+ 一组标签(tags)+ 数据产生时间(timestamp)三部分唯一确定。

时序数据更适合体现数据“变化”的过程价值。如果在时间坐标中将这些数据点连成线,过往的数据可以形成多纬度报表,揭示数据的趋势性、规律性,捕获异常;未来的数据可以建立数据模型、做统计分析,实现预测和预警。

时序数据应用场景

随着5G/IoT技术的发展,数据呈爆炸式增长,其中物联网与应用性能监控等是时序数据最典型的应用领域,覆盖物联网、车联网、智能家居、工业互联网、应用性能监控等常见的应用场景。

图一 时序数据应用场景

时序数据的特征及挑战

在典型的物联网与应用性能监控等时序数据应用场景里,数据产、访问都有比较明显的规律,有很多共同的特征,相比当前互联网典型的应用特征有比较大的区别。

结合时序数据的特征,要满足大规模时序数据存储需求,至少面临如下的几个核心挑战:

  • 高并发高吞吐写入:在一些大规模的应用性能监控、物联网场景,海量的设备持续产生时序数据,例如某CDN内容分发网络系统,3000+台服务器,每秒/每十秒采集超100个系统指标和业务指标,每秒的时序数据点数达到数十万时间点,需要数十台机器的集群规模来支撑全量的业务写入;时序数据存储需要解决大规模集群的横向扩展,高性能平稳写入的需求。
  • 高效的时序数据查询分析:在典型的监控场景,通常需要对长周期的数据进行查询分析,比如针对某些指标最近1天、3天、7天、1个月的趋势分析、报表等;这些查询都需要扫描大量的集群数据才能拿到结果,同时查询的结果集也可能非常大;时序数据存储需要支持多维时间线检索、并具备流式处理、预计算等能力,才能满足大规模应用监控、物联网业务场景的典型查询需求,并且针对时序大查询要最小化对写入的影响。
  • 低成本的时序数据存储:某家庭安防场景,超千万安防设备,每天就产生近百GB的视频切片元数据指标,如果要保存一年的运行数据就需要PB级的数据存储规模;由于数据规模巨大,对存储的低成本要求很高,另外时序数据的冷热特征明显。时序数据存储需要充分利用好时序数据量大、冷热访问特征明显、做好计算、存储资源的解耦,通过低成本存储介质、压缩编码、冷热分离、高效TTL等技术将数据存储成本降低到极致。
  • 简单便捷的生态协同:在物联网、工业互联网等场景,时序数据通常有进一步做运营分析处理的需求,在很多情况下时序数据只是业务数据的一部分,需要与其他类型的数据组合来完成查询分析;时序数据存储需要能与生态BI分析工具、大数据处理、流式分析系统等做好对接,与周边生态形成协同来创造业务价值。

时序数据库的现状和发展

时序数据库结合时序数据的特征,尝试解决时序数据存储在高写入吞吐、横向扩展、低成本存储、数据批量过期、高效检索、简单访问与时序数据计算等方面面临的挑战。进入2010年后,针对时序数据存储设计的数据库相继诞生,并且时序数据库的增长趋势、关注热度持续领先,国产化进程不断加快。

时序数据库关注度日趋火热,未来还有更大空间

在DB-Engine排行榜上,我们可以看到时序数据库在近两年在DB-Engine上是关注度上升最快的数据库类型。

图2时序数据库关注热度(数据来源:https://db-engines.com/en/ranking_categories)

时序数据库处于百花齐放,各家时序数据正在深耕各自领域

图3 时序数据库热度排名(数据来源:DB-engines)

图4 时序数据库发展简史

经过多年发展,时序数据库大致经历了几个阶段:

第一代时序数据库:基于关系型数据库的简单存储。代表:TimescaleDB,基于PostgreSQL关系数据库构建。

第二代时序数据库:依赖与Hadoop生态的通用分布式存储系统。代表:OpenTSDB(底层使用HBase),KairosDB(底层使用 Cassandra)。

第三代时序数据库:对高性能,低成本有强需求,需要针对时序领域特别专门设计。代表:InfluxDB,IoTDB和TDengine等。

数据库产品国产化进程加快,大厂纷纷布局

包括TDengine(涛思)、IoTDB(清华)、DolphinDB(智臾科技)等优秀的国内时序数据库异军突起,自主可控成为国内华为、阿里等厂商布局时序数据库场景的重要考量,华为时序数据库内化InfluxDB和IoTDB,阿里自研TSDB时序引擎,并提供基于InfluxDB的阿里云TSDB for InfluxDB,腾讯也推出了TencentDB for CTSDB云服务。

典型时序数据库介绍及对比

5.1 InfluxDB

InfluxDB由Golang语言编写,系统性能、稳定性好,被广泛应用,是当前DB-engine热度排名第一的时序数据库,生态支持丰富全面。不过,InfluxDB采用MIT开源协议,开源版本没有集群功能,商业版本具备分布式集群、数据分级存储等功能,但价格不菲。

5.2 OpenTSDB

OpenTSDB是Apache开源软件,是在HBase的基础上开发的,底层存储是HBase,但其依据时序数据的特点做了一些优化。其最大的好处就是建立在Hadoop体系上,各种工具链成熟,但这也是它最大的缺点,因为Hadoop不是为时序数据打造的,导致其性能很一般,而且需要依赖很多组件,安装部署相当复杂。

图5 OpenTSDB系统架构

图6 OpenTSDB在HBase中存储数据模式

5.3 TDengine

TDengine不仅是一款时序数据库,而且还提供缓存、消息队列、数据订阅、流式计算等系列功能,是时序数据的全栈技术解决方案。而且它不依赖任何第三方软件,安装包只有1.5MB,使系统设计、安装、部署和维护都变得极为简单。

图7 TDengine系统框图及全栈解决方案

5.4 IoTDB

Apache IoTDB是一体化收集、存储、管理与分析物联网时序数据的软件系统。Apache IoTDB采用轻量式架构,具有高性能和丰富的功能,并与Apache Hadoop、Spark和Flink等进行了深度集成,可以满足工业物联网领域的海量数据存储、高速数据读取和复杂数据分析需求。

图8 IoTDB系统架构图

IoTDB独创采用了tree schema来对时序数据建模,该数据模型更符合工业物联网场景中的层级结构,但牺牲了一些标签灵活性。

图9 IoTDB树状模式样例

主流时序数据库对比

数据来源:公开资料及实测分析

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/305165.html<

(0)
运维的头像运维
上一篇2025-05-26 01:48
下一篇 2025-05-26 01:49

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注