阿里云高性能时序数据库 TSDB 启动公测,为物联网而生的数据库!

简介: 2017云栖大会·上海峰会上,阿里云发布了面向物联网场景的高性能时间序列数据库 (Time Series Database , 简称 TSDB) 。TSDB 可支持每秒1000万时序数据点写入;具备PB级别的数据存储能力,提供高效压缩算法,整体存储成本降低90%;提供时序数据插值计算,降精度计算,时间纬度聚合计算,空间纬度聚合计算的能力。

摘要:2017云栖大会·上海峰会上,阿里云发布了面向物联网场景的高性能时间序列数据库 (Time Series Database , 简称 TSDB) 。TSDB 可支持每秒1000万时序数据点写入;具备PB级别的数据存储能力,提供高效压缩算法,整体存储成本降低90%;提供时序数据插值计算,降精度计算,时间纬度聚合计算,空间纬度聚合计算的能力。

TSDB 是一种高性能、低成本、稳定可靠的在线时序数据库服务;提供高效读写,高压缩比存储、时序数据插值及聚合计算。是物联网(IoT)设备监控系统 ,企业能源管理系统(EMS),生产安全监控系统,电力检测系统等行业领域的专业数据库。

TSDB 打造物联网智慧园区

TSDB 已经在阿里巴巴内部孵化多年,在阿里巴巴集团已经支持了20多个核心业务场景,比如阿里智慧园区的物联网(IoT)建设。

智慧园区主要解决办公园区的设备的管理和智能控制。设备管理主要是将设备接入到统一的设备管理平台,同时对所有设备的运行情况进行监控,及时发现故障设备,了解整体的设备运行情况以便于做出相应的决策。

而智能控制就是系统能够根据设备的运行状态,通过某些规则的设定自动的进行各种调控,比如:当某个办公区域的人数大于20人时,可以自动开启亮灯,小于20人是可以自动关灯,或者当某一区域的一氧化碳的水平高于预警值,则自动启动报警开关,对于园区的安全管理也非常必要。

对于技术而言,设备的监控和智能控制的规则的匹配,本质是数据的收集和监控分析。

园区的设备种类繁多,包括摄像头、电灯、空调、空气检测,这些设备上都有非常多的传感器,这些传感器每一时刻都在实时的产生数据,这些数据随着时间的推进,会在时间轴上产生一些列的数据,就是我们说的时序数据,比如温度、湿度、用电量等。要实现设备的监控管理,其实就是将这时序数据进行实时的采集存储和分析展现,而 TSDB 就是时序数据领域的专业数据库。

阿里云高性能时序数据库 HiTSDB 启动公测,为物联网而生的数据库!

TSDB 集群可支持每秒 1000 万的时序数据点写入

TSDB 具备关系数据库及NoSQL 数据库所不具备的写入能力。

智慧园区以及其他的IoT场景,设备的规模通常是万级别至百万级别,每个设备都实时产生数据,需要将实时数据快速的写入到数据库中,那么每秒就要写入上百万甚至上千万的实时数据。

百万甚至千万级别的实时数据写入对于数据库并发写入的压力非常巨大,使用关系型数据库完全不可行。 因为 InnoDB 的写入性能是很有限的,实际测试在24台机器上,存储使用SSD硬盘,一秒钟只能持续写入只有两万左右,主要原因在于B树索引。InnoDB 的索引是一个B树,这个B树的更新有很大的开销。虽然我们可以通过一些办法优化,但时序数通常是一个多维数据,通常是 ADhoc 的查询,为了优化所有排列组合查询,需要建很多多列的索引,这些索引每次在写的时候每个都需要更新,所以就会导致很多的IO。

而 TSDB 针对时序数据库的进行写入优化,基于时间序列的时间线数据结构进行存储写入,实际业务使用场景中最高支持到每秒 1000 万的时序数据点写入。基于阿里云 4C8G规格的 ECS,单台平均达到10万/秒的数据写入,峰值达15万/秒。

TSDB 具备领先的时序数据分析技术优势

在数据查询方面,TSDB 也具备领先的技术优势。在时序数据领域“插值(interpolation)”,“降精度(DownSimple)”以及“聚合计算(Aggregation)”是常见的业务需求。举个例子, 智慧园区的业务系统需要查看一个楼宇的某盏灯的耗电量情况,那么就需要把这盏灯的耗电量数据从数据库中查询并展示出来,如果由于采集的故障导致某个时刻用电量数据缺失,那么需要通过特定算法来近似的估算出这个数据,这个计算补全数据的过程就是“插值”。而当需要查看这盏灯一年的耗电趋势情况时,通常只需要计算出每一天的耗电量,进行查看,而不需要把每一个时刻采集的数据全部输出出来,这个将原始精度转化为业务需求精度的过程就是“降精度”。而如果要统计某一个楼层或者楼宇的用耗电量整体趋势数据时,就需要将所有统计范围内的灯具的耗电量数据做“合并统计”,这个类似的统计过程就是Aggregation。

阿里云高性能时序数据库 HiTSDB 启动公测,为物联网而生的数据库!

时序数据降精度是在时间序列维度上做的。对于关系数据库来说,首先要把时间序列维度拿出来,然后在中间插值,而实际上 SQL 是按点来操作的。所以如果要做降精度的话,需要用一个值查询把整条时间序列上的数据查询出来,插好值之后才能做时间序列之间的聚合,那么服务和 SQL 服务器之间的吞吐量非常大,相当于 SQL 只是一个数据通道需要把所有值都拉出来运算一遍,这个查询性能会非常慢,并且每一次计算都需要重新拉取数据,相对 TSDB,这个性就能差了几百倍。

TSDB 支持线性插值,可以尽量弥补数据异常缺失造成的统计失败。TSDB 支持 Max ,Min ,AVG 等各种降精度的计算函数,同时也可以通过“预降精度”的方式,将业务精度的数据在入库的过程中计算完成,提升查询的效率。TSDB 在的空间聚合 Aggregator 支持也非常全面,支持 ADhoc 查询,TSDB 通过引入倒排索引和数据分片提升检索时间序列的效率,通过并行计算架构,整体计算性能提升非常明显。

TSDB 兼容 OpenTSDB 协议,写入性能提升20倍,压缩效率提升10倍。

TSDB 兼容 OpenTSDB 访问协议。OpenTSDB 是时序数据库领域相对活跃的技术产品,TSDB 通过技术优化后相对于 OpenTSDB 写入性能提升20倍以上。TSDB 压缩效率相比较 OpenTSDB 提升10倍左右,通常原始时序数据的大小在 200-300 Byte,OpenTSDB 单数据点消耗约20 Byte,TSDB 单数据点消耗约 2Byte,通过 TSDB 可以节约90%以上的数据库存储成本。

TSDB 所具备的高效数据写入和高压缩比的特性,以及阿里长期业务实践的所提供的稳定性保证,结合阿里云上丰富的产品生态,可以帮助 IoT 企业快速构建自己的智慧物联网监控分析系统,也可以帮助传统的石油化工及制造企业插上物联网的翅膀,打造属于企业自己的智慧系统。

现在,TSDB 在阿里云官网启动免费公测。

公测名额有限,立即申请http://click.aliyun.com/m/27108/

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
2月前
|
存储 人工智能 Cloud Native
阿里云瑶池数据库训练营权益:《玩转Lindorm》学习资料开放下载!
阿里云瑶池数据库训练营权益:《玩转Lindorm》学习资料开放下载!
|
1月前
|
关系型数据库 分布式数据库 数据库
PolarDB PostgreSQL版:Oracle兼容的高性能数据库
PolarDB PostgreSQL版是一款高性能的数据库,具有与Oracle兼容的特性。它采用了分布式架构,可以轻松处理大量的数据,同时还支持多种数据类型和函数,具有高可用性和可扩展性。它还提供了丰富的管理工具和性能优化功能,为企业提供了可靠的数据存储和处理解决方案。PolarDB PostgreSQL版在数据库领域具有很高的竞争力,可以满足各种企业的需求。
|
2月前
|
消息中间件 DataWorks 物联网
MQTT问题之接入阿里云物联网平台如何解决
MQTT接入是指将设备或应用通过MQTT协议接入到消息服务器,以实现数据的发布和订阅;本合集着眼于MQTT接入的流程、配置指导以及常见接入问题的解决方法,帮助用户实现稳定可靠的消息交换。
163 1
|
1月前
|
存储 数据处理 数据库
构建高性能的数据库查询引擎
本文将介绍如何构建一个高性能的数据库查询引擎,以提升数据库查询的效率和响应速度。通过优化查询计划、索引设计和数据存储等方面,可以实现更快速和可扩展的数据库查询,为应用程序提供更好的用户体验和数据处理能力。
|
5天前
|
消息中间件 存储 JavaScript
阿里云IOC物联网异步处理基础概念
该内容介绍了异步处理基础和消息队列的相关概念。首先,同步处理指任务完成后才能执行其他操作,而异步则允许任务并行执行,不阻塞程序。异步能提高系统并发性和响应性,但也增加复杂性和资源消耗。接着,提到了消息队列,包括生产者、消费者、队列、broker和topic等概念,并指出在IoT中,设备作为生产者发送消息到特定topic,消费者从队列获取数据。最后,简要介绍了AMQP协议,它是用于应用程序间消息传递的开放标准,常用于分布式系统和物联网,如RabbitMQ和Apache Qpid。课程将以Apache Qpid为例接收IoT数据。
116 6
阿里云IOC物联网异步处理基础概念
|
16天前
|
存储 缓存 NoSQL
Redis 服务器指南:高性能内存数据库的完整使用指南
Redis 服务器指南:高性能内存数据库的完整使用指南
|
2月前
|
消息中间件 网络协议 物联网
MQTT协议问题之阿里云物联网服务器断开如何解决
MQTT协议是一个轻量级的消息传输协议,设计用于物联网(IoT)环境中设备间的通信;本合集将详细阐述MQTT协议的基本原理、特性以及各种实际应用场景,供用户学习和参考。
129 1
|
3月前
|
存储 druid 关系型数据库
时间序列数据库(TSDB)初识与选择
时间序列数据库(TSDB)初识与选择
60 0
|
3月前
|
缓存 数据库 开发者
构建高性能的数据库查询语句优化策略
数据库查询是开发过程中常见的性能瓶颈之一。本文将介绍构建高性能数据库查询语句的优化策略,包括索引的设计与使用、查询语句的编写技巧、连接的优化等方面,帮助开发者提升数据库查询的效率和响应速度。
|
3月前
|
存储 安全 物联网
安防摄像头IPC如何快速接入阿里云Link Visual视频服务(阿里云生活物联网)
Link Visual是生活物联网平台针对视频产品推出的增值服务,提供视频数据上云、存储、转发、AI计算等能力。 大白话就是:通过阿里云的Link Visual视频服务,可以让你的IPC摄像头设备完成上云功能,并快速实现如下功能介绍中的功能。其中可以享受阿里云P2P协议支持,帮助企业节省流量服务器流量带宽。
293 7