美文网首页
推荐物联网项目中采用时序数据库

推荐物联网项目中采用时序数据库

作者: 黄军雷 | 来源:发表于2022-01-05 23:54 被阅读0次

随着制造业数字化的发展以及物联网应用的普及,越来越非互联网、业务系统的数据被采集、记录和存储。

很多系统开发者熟悉的是 Oracle、MySQL等关系型数据库,以及像 Redis 这样的键值数据库,于是在物联网应用、制造业数字化应用中也延续了相似的数据库选型。

这样做的好处很直接,产品熟悉,技术难度可控,开发工期可控。但随着系统运行时间的推移,该方案面临的性能挑战越来越大,而且在业务开发中会面临很多相似的查询、统计需求需要实现。

为什么呢?我们再审视一下物联网数据、制造业数据的特点。
首先,数据结构相对简单,主要包含三列,时间、标签、值;
第二,数据生成大多具有稳定的节奏,不存在或者与一般互联网应用那样的波峰波谷;
第三,数据很少更新,更多的是一次写,多次查询;
第四,数据量极其巨大,同时对于存储成本又很敏感;
第五,数据分析统计中很重要的维度之一是时间;
……

以上这些特点和我们熟悉的交易类数据有很明显不同。虽然用关系型数据库可以存储和管理,但没有很好的利用对于数据的理解。

如果能选择针对这类数据特点的专用数据库,则会让很多技术难点得到化解,而且会提高系统的稳定性。在数据库行业中,这类产品叫时序数据库。

时间序列数据库是广泛应用于物联网(IoT)设备监控系统 ,企业能源管理系统(EMS),生产安全监控系统,电力检测系统等行业场景的专业数据库产品,提供百万高效写入,高压缩比低成本存储、预降采样、插值、多维聚合计算,查询结果可视化功能;解决由于设备采集点数量巨大,数据采集频率高,造成的存储成本高,写入和查询分析效率低的问题。下面介绍几款时间数据库产品供大家选择。

Informix TimeSeries

Informix TimeSeries在时间序列数据库中的位置就像Oracle 在关系数据库中一样,属于经典的产品。

它给后续时间数据库产品研发提供了很好的标杆作用。其针对时间序列数据的特殊存储结构、索引设计以及专用计算函数都属于创新性的设计。

它也是多模数据的早期实践者,能与关系型数据库引擎并存,简化了应用系统设计、部署的复杂度。

时间序列数据 传感器数据

InfluxDB

时序数据库 InfluxDB®版是一款专门处理高写入和查询负载的时序数据库,用于存储大规模的时序数据并进行实时分析,包括来自DevOps监控、应用指标和IoT传感器上的数据。目前有以下特点:

  • 专为时间序列数据量身打造的高性能数据存储。TSM引擎提供数据高速读写和压缩等功能。
  • 简单高效的HTTP API写入和查询接口。
  • 针对时序数据,量身打造类似SQL的查询语言,轻松查询聚合数据。
  • 允许对tag建索引,实现快速有效的查询。
  • 数据保留策略(Retention policies)能够有效地使旧数据自动失效。
InfluxDB

OpenTSDB

OpenTSDB是可扩展的分布式时序数据库,底层依赖HBase。作为基于通用存储开发的时序数据库典型代表,起步比较早,在时序市场的认可度相对较高。

OpenTSDB的自我定位很清晰:The Scalable Time Series Database。

如果应用场景很看中扩展性,可以选择 OpenTSDB,否则就要考虑一下是否需要接受将 HBase 也纳入到技术栈和系统中了。

OpenTSDB

阿里云智能TSDB

阿里云智能TSDB高度兼容OpenTSDB协议,采用自研的索引,数据模型,流式聚合等技术手段提供更强大的时序能力。它不是简单的把OpenTSDB在云上部署了一份,而是基于云计算架构重新设计了底层架构;同时由于阿里云TSDB底层技术架构同OpenTSDB的实现区别巨大,对于OpenTSDB的一些运维接口不会兼容。从运维管控,功能,成本,性能等方面对比,阿里云智能TSDB相比OpenTSDB而言,优势还是很明显的。

TSDB

上述应用架构中,设备将原始数据通过 MQTT 协议发送到物联网平台,经由物联网平台将数据转发到消息服务系统,继而通过流计算系统对这些数据进行实时计算处理后写入到 TSDB 中存储,或者经由物联网平台直接将原始数据写入 TSDB 中存储。前端的监控系统和大数据处理系统会利用 TSDB 的数据查询和计算分析能力进行业务监控和分析结果的实时展现。

阿里云TSDB for InfluxDB

阿里云TSDB for InfluxDB则是云上的 InfluxDB 版,与InfluxDB 有很好的兼容性,可顺利的将将线下是数据库迁移至云上;同时省去了部署、运维管理的复杂度。

系列 说明 适用场景
基础版 单节点实例 个人学习、中小规模DevOps监控、应用指标和IoT传感器的时序数据采集分析、中小企业开发测试。
高可用版 采用Raft一致性协议的三节点架构,适合80%以上的用户场景 大中型企业的指标采集、业务监控(物联网、容器、工业生产等重要链路资源监控)。

作者:黄军雷
数据驱动价值 热爱成就非凡

相关文章

  • 推荐物联网项目中采用时序数据库

    随着制造业数字化的发展以及物联网应用的普及,越来越非互联网、业务系统的数据被采集、记录和存储。 很多系统开发者熟悉...

  • 时间序列数据库及应用场景

    时间序列数据库简称时序数据库(Time Series Database),常适用于物联网设备监控和互联网业务监控场...

  • 2020-12-13 docker部署timescaledb

    timescaledb是基于postgresql数据库的一个时序数据库,是采用插件形式实现的。 最方便的方式是采用...

  • RedisTimeSeries实时时序数据库预研

    背景 时序数据库开源实现有比较多的选择,比如:InfluxDB、OpenTSDB等。我们项目中没有使用这些时序数据...

  • InfluxDB 简单上手(一)

    背景 最近公司的监控项目中用到时序数据库,现在简单介绍学习以下,后面再详细研究。 什么是时序数据? A time ...

  • TDengine Taos 物联网时序数据库记录

    前言 TADS 主要针对物联网使用,物联网设备的特点是:设备基本有固定的上报数数据,上报的数据有时序性。设备种类不...

  • TDengine小介绍

    ● TDengine - 高吞吐时序数据库传统解决方案层级多,维护困难。工业互联网数据特点:时序空间数据、按照时间...

  • 时序数据库

    什么是时序数据库 简单来说时序数据库就是用来存储时序数据的数据库,而时序数据是基于时间一系列数据,一般来说时序数据...

  • 《车联网》下一个掘金口

    国家十三五规划100项重大项目中第54项加快物联网、车联网的建设。1431排队入场,给您送人送订单,抱团取暖齐上股...

  • 基于云数据库MongoDB版进行应用开发

    MongoDB是一个基于分布式文件存储的数据库,在互联网、物联网、游戏、金融等领域被广泛采用。由C++语言编写。旨...

网友评论

      本文标题:推荐物联网项目中采用时序数据库

      本文链接:https://www.haomeiwen.com/subject/zhklcrtx.html