作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢!


接上篇:测试所有metric都是存在过的metric的情况下,单核的极限写入性能。也就是说,只增加数据部分,不影响索引部分。

1.基础信息

  • CPU 1核
  • 内存 8GB
  • 本地磁盘(应该是SATA盘)
  • metric的平均长度:513字节
  • vm-storage版本:v1.78.0-cluster
  • 压测方法:使用remote write协议写入完全不同的metric数据,每次发送1000条,每核50个并发,一共15核。
    • vm-insert 5 实例,共20核,资源充足
    • vm-insert的关键参数如下:
      • -maxConcurrentInserts=默认值
      • -sortLabels: 开启label的排序。
      • -insert.maxQueueDuration=3s,允许在队列中等待的最长时间。
      • -dropSamplesOnOverload: 为了保护vm-insert自身,在vm-storage变慢后,立即丢弃数据。

2.vm-storage性能表现

  • CPU占用:0.80核~0.89核 (相当于CPU资源已经到瓶颈了)
  • 内存:3.52GB, 占44%
  • 网络入流量:810kb/s
  • 磁盘读:平均100kb~200kb/s, 峰值2.38mb/s ,最高延迟 5.14ms
  • 磁盘写:平均100kb~500kb/s,峰值7.05mb/s, 最高延迟 43.6ms
    • 相比于写入索引,写入数据所占用的IO要小得多
  • 新的metric的占比 0%, slow insert的占比0%(显而易见) , tsid cache的miss率 0%(显而易见)
  • 每秒写入的data point数量:43万/s
  • vm-insert端:
    • 请求量:431583/s
    • 丢弃量:5028/s

3.总结

  • 当所有的time series都是旧的情况下, vm-storage的的单核的极限写入性能大约是:43万/s
  • 磁盘读是写入流量的 四分之一, 磁盘写是写入流量的 二分之一
  • 当写入量过大时,CPU是瓶颈。内存、网络流量和磁盘IO的资源占用相对较小。
  • 根据压测数据:写入索引的成本是写入数据的 43万 / 6000 = 71.7倍

4.遗留问题

  • 怎么样让vm-insert尽量不丢包,又不会导致过载?
  • vm-insert的资源与vm-storage的配比是怎么样的?配置多少vm-insert才能不出现drop数据?
  • 旧metric和新metric按照一定比例混合发送的时候,性能表现又是怎么样的?

vm-storage在全部都是旧metric情况下的写入性能测试的更多相关文章

  1. Hive&SqlServerql:inner join on条件中如果两边都是空值的情况下,关联结果中会把数据给过滤掉。

    今天遇到的一个大坑,话不多少,看sql和下边的查询结果: --问题:恰好把buildingid is null的记录给过滤掉 ),buildingid ),)); ); ); ); ); ); ); ...

  2. 在不连接网线的情况下Windos与VM之间如何ping通

    一般情况下,如果宿主主机的网口连接网线并且能够上网,那么按照VM的默认安装,在VM-Settings-Hardware-Network Adapter-Network connection中选择Bri ...

  3. 关于RecyclerView你知道的不知道的都在这了(下)

    目录 目录 正文 6. Recycler 7. ItemAnimator 8. ItemDecoration 9. OnFlingListener 目录 由于本篇篇幅特长,特意做了个目录,让大伙对本篇 ...

  4. PHP一般情况下生成的缩略图都比较不理想

    PHP用GD库生成高质量的缩略图片,PHP一般情况下生成的缩略图都比较不理想.今天试用PHP,GD库来生成缩略图.虽然并不100%完美.可是也应该可以满足缩略图的要求了.<?php $FILEN ...

  5. 请问下mtk双卡手机怎样发短信是怎样选择sim卡来发(双卡都可用的情况下)?

    如题,我如今可以获取双卡状态,当仅仅有单一卡的时候可以指定sim卡进行发短信,可是双卡都可用的情况下,程序就默认使用卡1发短信了.即使指定了sim卡编号.

  6. 《剑指Offer》第1题(Java实现):在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

    一.题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该 ...

  7. RabbitMQ默认情况下不保证每次都把消息传递

    有意思,RabbitMQ默认情况下是不保证每次都把消息传递的,很多情况下我们都是这样发送数据的,    channel.BasicPublish(QUEUE_NAME, String.Empty, n ...

  8. 微信、QQ、新浪微博等第三方登录,你想知道的都在这了(上) 微信、QQ、新浪微博等第三方登录,你想知道的都在这了(下)

    微信.QQ.新浪微博等第三方登录,你想知道的都在这了(上):https://www.jianshu.com/p/133d84042483 微信.QQ.新浪微博等第三方登录,你想知道的都在这了(下):h ...

  9. Notification 多次传递参数 一直都是旧的 解决

    参考 :http://blog.163.com/caoguoqiang_dlut/blog/static/10658914220114167219320/ 问题描述: 在service中获取到数据,通 ...

  10. 前端重定向,index.html文件被浏览器缓存,导致整个应用都是旧的

    解决方法:https://github.com/ant-design/ant-design-pro/issues/1365#issuecomment-384496088

随机推荐

  1. Go语言逆向技术:恢复函数名称算法

    摘要:在对程序做安全审计.漏洞检测时,通常都需要对程序做逆向分析,本文在没有符号表的情况下,提出了一种恢复函数名称的算法,方便对go语言二进制文件进行逆向分析,提升分析效率. 本文分享自华为云社区&l ...

  2. 火山引擎DataLeap的Data Catalog系统公有云实践 (下)

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 Data Catalog公有云遇到的挑战 Data Catalog经历了一个从0到1在火山引擎公有云部署并逐步优化 ...

  3. Markdown Emojio 表情图标

     :smile:  :laughing:  :blush:  :smiley: ️ :relaxed:  :smirk:  :heart_eyes:  :kissing_heart:  :kissin ...

  4. 【有奖体验】AIGC小说创作大赛开启!通义千问X函数计算部署AI助手

    一个 AI 助手到底能做什么? 可以书写小说 可以解析编写代码 可以鼓舞心灵 提供职业建议 还有更多能力需要您自己去探索.接下来我们将花费 5 分钟,基于函数计算X通义千问部署一个 AI 助手,帮你撰 ...

  5. u-swipe-action 宽度计算的延迟导致组件加载时内部样式错误

    https://toscode.gitee.com/umicro/uView/issues/I1Y50J 左图为电脑显示效果,右图为app显示效果. 原因:u-swipe-action 宽度计算的延迟 ...

  6. 二分图的匹配 hdu 1083

    ***题意:n个学生,p门课,求最大匹配,即p门课是否都有人上*** 匈牙利算法 #include<iostream> #include<cstdio> #include< ...

  7. qq快速打开邮箱的设置

    登陆qq想快速进入邮箱,发现没有入口

  8. springBoot 使用 @NotEmpty,@NotBlank,@NotNull 及@Valid注解校验请求参数

    本文为博主原创,转载请注明出处: @NotEmpty,@NotBlank,@NotNull 这些注解所在的jar包路径在 javax.validation.constraints 的包下面,这个包下面 ...

  9. Memory Bist

    SRAMC主要是对SRAM进行控制 对于SRAM的逻辑,根据地址将数据存储到SRAM中,然后根据地址将SRAM中的数据读取出来 如何测试Memory,生产工艺原因造成的问题,采用DFT或者Bist测试 ...

  10. Oracle 专用模式与共享模式的学习与思考

    Oracle 专用模式与共享模式的学习与思考 说明 Oracle数据库中的专用模式和共享模式是两种不同的数据库运行模式,它们在应用场景和权限管理上有所不同. 专用模式(Dedicated Mode): ...