1、背景
随着近年来业务的发展,尤其是机器产生的数据占比越来越高的趋势下,时序数据因为其业务价值越来越被更多地关注,也因而催生了专用的时间序列数据库,简称时序数据库(TimeSeries Database,TSDB)。时序数据库是专门面向时序数据设计的专用数据库,在时序数据的采集、存储和处理上相比于传统的关系型数据库有明显的优势。但是,也正因为时序数据库是专用于时序数据库处理的数据库,在很多涉及与非时序类数据交互的业务场景下,不得不同时使用时序数据库和传统关系型数据库,不光造成了系统结构复杂,还会导致数据加工流程长、应用系统承担很多关联、聚合等本该数据库来处理的操作。基于该背景,星瑞格数据库管理系统(下文简称SinoDB)在业界开创性实现了传统关系型引擎之外的第二引擎——时间序列引擎(简称TimeSeries)。
2、SinoDB的时间序列引擎
SinoDB的时间序列引擎TimeSeries是星瑞格基于SinoDB BizWrapper业务封装技术和框架构建的一套专用于时序数据处理的模块集,在其中定义了时序数据类型、时序数据索引和对时序数据进行采集、存储、查询、聚合等操作函数,同时,也针对时序数据的特征定义专用的存储结构。
在数据的存储组织上,针对每一类度量(Metric)都以按标签(Tag)分类+按时间戳(Timestamp)排序的方式记录测量值(Field)形成一个特定的数据点(Data Point),随着时间的变化,这些数据点就构成了时间线(Time Series)。因此,在数据的存储组织层面,SinoDB TimeSeries与当前市面上广泛使用的专用的时序数据库没有本质的差别,这就保证了SinoDB在时序数据处理上具备专用时序数据库的处理能力。
在数据使用上,SinoDB TimeSeries使用虚拟表(Virtual Table)技术,把时序数据的存储模型映射为传统关系数据库的二维表模型,使用标准SQL的方式来访问时序数据。这种设计不光简化了对时序数据操作,也使得时序数据与其它非时序特征的业务数据的关联使用提供了数据库层面的解决方案,用户无需把时序数据和非时序特征的业务数据读取到应用系统中进行关联处理,而是可以直接在数据库中完成关联,降低了数据处理的复杂度、缩短了数据处理的流程、提升了数据处理的效率。
通过对比测试,在时序数据处理上,SinoDB TimeSeries引擎相比于传统的关系型引擎处理性能上提升20倍以上,而存储成本同时降低了一半。
3、SinoDB时间序列引擎的优势
(1)相比于传统关系型引擎,SinoDB TimeSeries在处理时序数据时有远高于传统关系型解决方案的整体性能,且同时可以显著节约存储成本。
(2)相比于专用的时序数据库,SinoDB TimeSeries 使用标准SQL以处理关系表的形式对时序数据加以利用,整体易用性上有明显优势。
(3)SinoDB TimeSeries是SinoDB的第二引擎,完全可以与SinoDB的关系型引擎共生且无缝结合,让一种数据库同时处理传统关系型数据和时序数据成为现实,极大地降低了业务系统和数据处理的复杂度、缩短了数据处理的流程、提升了数据处理的效率。
4、SinoDB时间序列引擎的应用场景
SinoDB TimeSeries适用于所有的包含时序数据处理的应用场景,尤其适用于IoT物联网类应用场景。
(1)公共安全:上网记录、通话记录、个体追踪、区间筛选、网监网侦等;
(2)电力与电网:发电设备监控、电网监控、智能电表应用等;
(3)互联网:服务器/应用监测、用户访问日志、广告点击日志等;
(4)交通业:实时路况、路口流量监测、卡口数据等;
(5)金融业:交易记录、存取记录、ATM、POS机监测、股市行情等。
更多信息内容请移步星瑞格官方社区,期待大家加入
官方网址:https://forum.sinoregal.cn