专栏首页芋道源码1024为什么有了 MySQL ,还要有时序数据库?

为什么有了 MySQL ,还要有时序数据库?

以下文章来源于UCloud技术,作者UTSDB 产品团队

近日,UCloud新发布了一款时间序列数据库UTSDB (UCloud TimeSeries Database) ,此次上线的UTSDB-InfluxDB版基于InfluxDB v.1.7,完全兼容原生 InfluxDB 协议。后端存储接入 UCloud 自研的Manul统一存储,容量可动态扩充,最高可至数百TB,并通过高效压缩节省80%存储成本。支持高并发写入,QPS最高可达350万,为物联网等领域的亿级设备提供实时监控生产数据、全局掌握数据趋势等能力。

时序数据库对IoT的价值

时序数据是指基于时间的一系列数据,随着IoT、5G等技术的发展,工业物联网、智能家居、监控等行业对时序数据的需求呈现爆发式的增长,而传统关系型数据库难以对此进行有效的处理。不仅因为数据量比之前可能要多数万倍,实时采集、高频度、高密度的动态数据也导致模型随时可变。

为了更好的支持时序数据的存储分析,各种时序数据库(TimeSeries Database)应运而生,时序数据库可以基于时间区间进行聚合分析和高效检索,实现对时序数据的快速写入、持久化、多纬度的查询等功能。据DB-Engines 2019年12月的最新报告显示,近一年内时序数据库的受欢迎程度稳居前列。

InfluxDB的优势

在最新的 DB-Engines时间序列数据库的排名中,InfluxDB 超越了Kdb+、Prometheus、OpenTSDB等时序数据库排名第一位。InfluxDB 是一个用于存储和分析时间序列数据的开源数据库,无需特殊的环境依赖,使用简单方便,且底层采用了TSMT 结构实现高性能读写。

相比其他类型的时序数据库,InfluxDB的主要优势在于:

  • 内置 HTTP 接口,使用起来更方便;
  • 数据可以打标记,查询更灵活;
  • 类 SQL 的查询语句;
  • 安装管理简单,且读写数据高效;
  • 实时查询,数据在写入时被索引后就能够被立即查出;
  • 灵活的数据保留策略,可以定义到Database级别;
  • 支持自定义插件,能够扩展到兼容多种协议,如Graphite、collectd和 OpenTSDB。

InfluxDB特别适用于存储大规模的时序数据并进行实时分析,包括来自 DevOps 监控、应用指标和 IoT 传感器上的数据。

为什么选择UTSDB-InfluxDB

InfluxDB作为一款开源的数据库软件,用户可以选择自行购买服务器进行安装使用,但由于InfluxDB分布式集群版本闭源,每次版本变动都较大,尤其是在存储和集群方面。因此自建整个部署流程和后续的数据库维护,例如版本升级、漏洞修复、服务器故障处理等工作需要耗费不少时间精力,且前期硬件成本投入大、部署周期长。

而UCloud此次上线的UTSDB-InfluxDB在完全兼容开源InfluxDB版本的基础上,后端存储还接入 UCloud 自研的分布式Manul统一存储,提供了动态可扩充的存储容量。通过UCloud控制台界面创建实例,用户可根据业务的实际需求情况按需选择时序数据库实例 CPU 和内存规格大小,从而实现业务的快速灵活可拓展。

相比自建 InfluxDB, UTSDB-InfluxDB还具备以下优势:

  • 数据高效读写

提供高并发、平稳、持续、实时写入数据,QPS(每秒数据点写入)最高可达350W。HTTP API 使用简单,且支持高效的写入和查询。

数据写入:支持通过API方式和InfluxDB语法写入协议;类SQL的查询语句,可轻松查询聚合数据;

数据查询:支持通过API访问和控制台查询两种方式;支持对标签(tag)建索引,以实现快速有效的查询。

  • 高效压缩存储

UTSDB-InfluxDB版专为时间序列数据定制的高性能数据存储,TSM引擎支持数据高效写入和数据压缩;可以降低 80% 存储使用空间,同时加快数据写入的速度,降低存储空间成本。

  • 时序数据计算能力

提供专业全面的时序数据计算函数,支持数据多维度(降采样、插值、多种聚合计算)查询分析;连续查询(CQ)自动计算聚合数据,以提高频繁查询的效率;保留策略(RP)有效地自动使过时数据过期。

  • 计算与存储分离

UTSDB-InfluxDB采用计算与存储分离架构,支持三副本存储确保数据安全可靠;支持Manul统一存储技术,IO性能强大;数据库宕机时支持秒级迁移、业务层几乎无影响;提供最高数百TB的存储空间,支持存储空间动态扩缩容,根据实际使用量计费,有效节省存储成本。

  • 简单易用

支持使用InfluxQL方式对时序数据库进行访问和管理,完全兼容InfluxDB的读写协议;

通过控制台即可一键部署InfluxDB,实现对实例及时序数据库进行管理,并提供监控功能,高效便捷,实时发现实例瓶颈。

UTSDB-InfluxDB存储计算分离架构

UTSDB-InfluxDB采用存储与计算分离架构,由存储层+计算层构成,存储层基于Manul统一存储,简要框架如下:

通过UTSDB-InfluxDB写入的数据都将写入Manul统一存储中,Manul统一存储提供数据可靠性保证。如果物理机出现问题,调度系统可以随时在另一台机器上重启UTSDB,无需再做数据的迁移,从而大幅度降低运维成本并提高服务可用性。

UTSDB-InfluxDB应用场景

可以说,绝大部分数据的产生都与时间有着密不可分的联系,时序数据的处理分析在越来越多的场景中出现,例如物联网传感器、移动互联网、工业生产等。UTSDB-InfluxDB因其高效的数据读写、存储计算分离、简单易用等特性,可以充分解决以下应用场景中时序数据的处理难题。

  • IoT 平台企业

IoT物联网企业通过将设备接入云端,实现设备云端监控、设备能源管理、设备预测性维护、设备租赁等功能,服务平台将设备的状态及记录的数据高并发实时写入到时序数据库UTSDB-InfluxDB中,通过 UCloud控制台及客户端工具等多种查询方式来访问时序数据并进行数据分析。

  • 互联网运维及业务监控

互联网行业也有大量的时序数据,例如用户访问网站的行为轨迹,业务运维监控系统分析,应用程序产生的日志数据等,将这些数据写入UTSDB-InfluxDB中可以做监控数据展示,并进行多维聚合计算查询。

  • 工业制造行业

传统制造业的生产安全监控需要通过产品智能化实现设备自诊断、自调整、自适应,降低设备运维成本,提高设备利用率。UTSDB-InfluxDB可帮助制造商创造新的商业模式,将产品转化成服务、数据转化成价值,提供多种查询方式,能够从整体大局上查看数据趋势及平均数值,从多维度进行数据分析、成本预算、资源规划等。

此外,UTSDB-InfluxDB还可结合UCloud-IoT平台,通过工业设备实时采集数据点、云平台时序数据库存储、进行海量数据分析处理,实现对制造业的生产设备的预测及维护、来改善生产制造系统,提高生产效率及质量,推动智能制造落地。

本文分享自微信公众号 - 芋道源码(javayuanma)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-12-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 详解 Redis 内存管理机制和实现

    Redis是一个基于内存的键值数据库,其内存管理是非常重要的。本文内存管理的内容包括:过期键的懒性删除和过期删除以及内存溢出控制策略。

    remcarpediem
  • 科技公司最爱的50款开源工具,你都用过吗?

    本文介绍了多款知名的开源应用软件,科技公司可以用它们来管理自己的 IT 基础设施、开发产品。

    统计学家
  • mybatis获取update的id

    平常我门都是更新数据,用更新的条件再查询一次,得到更新的记录。这样我门就进行了两次数据库操作,链接了两次数据库。增加了接口的处理事件,因为链接数据库是很耗时的操...

    似水的流年
  • Docker部署Redis

    2.运行容器(本地image是:docker.io/redis latest 8f2e175b3bd1 2 weeks ago 106.6 MB):

    似水的流年
  • Spring的统一事务模型

    Spring事务包含对分布式事务和单机事务的支持,我们用的比较多的是单机事务,也就是只操作一个数据库的事务。

    Java3y
  • Access denied for user 'root'@'localhost' (using password: NO)

    初次安装mysql,net start mysql,然后输入mysql -u root -p,出现enter password,我直接点击回车,结果出现如果下错...

    似水的流年
  • 面试官:说说超大数据量场景下的查询优化方案

    当需要从数据库查询的表有上万条记录的时候,一次性查询所有结果会变得很慢,特别是随着数据量的增加特别明显,这时需要使用分页查询。对于数据库分页查询,也有很多种方法...

    南风
  • Spring Boot 2.X(十八):集成 Spring Security-登录认证和权限控制

    在企业项目开发中,对系统的安全和权限控制往往是必需的,常见的安全框架有 Spring Security、Apache Shiro 等。本文主要简单介绍一下 Sp...

    朝雾轻寒
  • 数据库范式那些事

    数据库范式在数据库设计中的地位一直很暧昧,教科书中对于数据库范式倒是都给出了学术性的定义,但实际应用中范式的应用却不甚乐观,这篇文章会用简单的语言和一个简单的数...

    五月君
  • 搞懂分布式技术18:分布式事务常用解决方案

    本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看

    Java技术江湖

扫码关注云+社区

领取腾讯云代金券