时序数据库插入性能评测:MatrixDB是InfluxDB的78倍,TDEngine的38倍

30秒执行摘要:

  • MatrixDB 在小规模、中规模和大规模场景下表现均优于其他时序数据库,多数场景有几十倍性能优势

  • MatrixDB 支持ACID,确保数据不错不重不丢;InfluxDB、TDengine不能确保数据不错不重不丢

  • MatrixDB 在各种规模数据写入时,内存消耗小而且平稳;InfluxDB 占用内存较多;TDengine占用内存最多

  • MatrixDB 支持冷热分级存

背景

在物联网和实时数仓场景中,数据的高速写入能力至关重要,直接影响产品方案的可用性、可靠性和扩展性。以物联网为例,当面临千万甚至上亿设备、平均每个设备采集几十个到几百个指标时,每秒生成的数据将达到数十亿至数百亿。能否及时可靠的插入这种量级的数据,是评价一个物联网数据库的核心要素和第一需求。据统计,时序数据具有写多读少特征,其中95%甚至99%以上是数据写入操作,从这个意义上讲,怎么重视数据写入能力都不为过。

为了应对这种高通量数据写入需求,一些产品采用无事务或者弱事务的方式来提高写入速度,这样造成错误数据、重复数据或者丢失数据。MatrixDB通过MatrixGate组件,创新性的在保证事务严格一致性(ACID)的前提下,支持大吞吐量数据高速写入。同时,产品具有良好的线性扩展性,可以通过添加节点的方式,线性提升系统的写入速度,满足车联网、工业互联网、智能家居、智能城市等各种物联网场景的数据写入需求。

这篇博客将详细介绍在同样环境下MatrixDB、InfluxDB和TDengine三个产品的写入能力,方便用户选型。本文采用行/每秒衡量数据写入能力,有的文章使用数据点/秒,这两种方式可以互换,譬如一张表有时间列、设备ID列和5个指标列,那么插入一行数据就意味着插入5个数据点,如果一秒插入1000行,那么写入能力是每秒5000个数据点。

测试结论

根据不同的用户使用场景,我们定义了小规模、中等规模和大规模三种不同的测试用例。具体特征如下:

图片

针对每种测试用例,分别使用三种产品各自推荐的快速加载方式取得最高值,测试结果如下(单位: 行/秒),其中小规模选择100万设备1列指标数据、中等规模选择10万设备400列指标数据、大规模选择100万设备800列指标数据:

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值