盘点市面上主流的时序数据库

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

盘点市⾯上主流的时序数据库
万物互联时代,⼯业物联⽹产⽣的数据量⽐传统的信息化要多数千倍甚⾄数万倍,并且是实时采集、⾼频度、⾼密度,动态数据模型随时可变。

传统数据库在对这些数据进⾏存储、查询、分析等处理操作时捉襟见肘,迫切需要⼀种专门针对时序数据来做优化的数据库系统,即时间序列数据库。

时间序列数据库(Time Series Database)是⽤于存储和管理时间序列数据的专业化数据库,具备写多读少、冷热分明、⾼并发写⼊、⽆事务要求、海量数据持续写⼊等特点,可以基于时间区间聚合分析和⾼效检索,⼴泛应⽤在物联⽹、经济⾦融、环境监控、⼯业制造、农业⽣产、硬件和软件系统监控等场景。

▲DB-Engines最新发布的时序数据库排名表
根据国际知名⽹站DB-Engines数据,时序数据库在过去24个⽉内排名⾼居榜⾸,且远⾼于其他类型的数据库,可见业内对时序数据库的需求迫切。

相应的时序数据库产品近年来也快速发展,各⼤互联⽹企业包括⾕歌、阿⾥巴巴、亚马逊都推出⾃⼰的时序数据库,业界使⽤较多的时序数据库主要有如下⼏种:
1、InfluxDB
InfluxDB是⼀款⽤Go语⾔编写的开源分布式时序、事件和指标数据库,⽆需外部依赖。

该数据库现在主要⽤于存储涉及⼤量的时间戳数据,如DevOps监控数据,APP metrics,loT传感器数据和实时分析数据。

作为⽬前开源排名最⾼的时序数据库,InfluxDB⽀持数据存储策略(RP)和数据归档(CQ),能够实时查询,数据在写⼊时被索引后就能够被⽴即查出,内置HTTP接⼝,安装管理很简单,并且读写数据⾮常⾼效。

2、Kdb+
kdb+/q被官⽅称为世界上最快的时间序列数据库,它使⽤统⼀的数据库处理实时数据和历史数据,同时具备CEP(复杂事件处理)引擎、内存数据库、磁盘数据库等功能。

列式存储的特性,使得对于某个列的统计分析操作异常⽅便。

与⼀般数据库或⼤数据平台相⽐,kdb+/q具有更快的速度和更低的总拥有成本,⾮常适合海量数据处理,主要被⽤于海量数据分析、⾼频交易、⼈⼯智能、物联⽹等领域。

在延迟性上有着苛刻要求的⾦融领域,kdb+有着独特的优势。

3、Prometheus
Prometheus是⼀套开源的系统监控报警框架,由⼯作在SoundCloud的Google前员⼯在2012年创建,作为社区开源项⽬进⾏开发,2015年正式发布,并在次年正式加⼊Cloud Native Computing Foundation。

作为新⼀代的监控框架,Prometheus具备强⼤的多维度数据模型,有多种可视化图形界⾯,使⽤pull模式采集时间序列数据,可以采⽤push gateway的⽅式把时间序列数据推送⾄Prometheus server端。

4、 Graphite
Graphite是⼀个开源实时的、显⽰时间序列度量数据的图形系统。

Graphite并不收集度量数据本⾝,⽽是像⼀个数据库,通过其后端接收度量数据,然后以实时⽅式查询、转换、组合这些度量数据。

Graphite⽀持内建的Web界⾯,它允许⽤户浏览度量数据和图。

它由多个后端和前端组件组成。

后端组件⽤于存储数值型的时间序列数据,前端组件则⽤于获取指标项数据并根据情况渲染图表。

5、TimescaleDB
TimescaleDB是唯⼀⽀持完整SQL的开放源代码时间序列数据库,已针对⽀持全⾯SQL的快速提取和复杂查询进⾏了优化。

它基于PostgreSQL,并且为时间序列数据提供了最好的NoSQL和Relational世界。

TimescaleDB使开发⼈员和组织能够更多地利⽤其功能:分析过去,了解现在和预测未来。

在查询层⾯统⼀时序数据和关系数据可消除数据孤岛,并使演⽰和原型更容易实现。

可扩展性和完整的SQL接⼝的结合赋予员⼯提出数据问题。

6、阿⾥云TSDB
作为我国科技公司的代表,阿⾥云时序数据库也⼊围了DB-Engines榜单。

TSDB是⼀种集时序数据⾼效读写,压缩存储,实时计算能⼒为⼀体的数据库服务,可⼴泛应⽤于物联⽹和互联⽹领域,实现对设备及业务服务的实时监控,预测告警。

TSDB具备秒级写⼊百万级时序数据的性能,提供⾼压缩⽐低成本存储、预降采样、插值、多维聚合计算、可视化查询结果等功能,解决由设备采集点数量巨⼤、数据采集频率⾼造成的存储成本⾼、写⼊和查询分析效率低的问题。

相关文档
最新文档