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


根据正式环境实际的数据统计,全新的metric占整体的metric数据不到1%。

于是压测客户端每次发送1000条time series数据,990条曾经出现过的metric, 10条全新的metric。

测试在这个量级下,vm-storage的性能表现。

1.基础信息

  • CPU 1核
  • 内存 8GB
  • 本地磁盘(应该是SATA盘)
  • metric的平均长度:745字节
  • vm-storage版本:v1.78.0-cluster
  • 压测方法:使用remote write协议写入完全不同的metric数据,每次发送1000条(990条旧的metric, 10条全新的metric),每核100个并发,一共10核。
    • vm-insert 6 实例,共24核,资源充足
    • vm-insert的关键参数如下:
      • -maxConcurrentInserts=默认值:默认每个核四个并发。
      • -sortLabels: 开启label的排序。
      • -insert.maxQueueDuration=3s: 客户端请求在队列里的最大等待时间。
      • -dropSamplesOnOverload: 在vm-storage变慢后,立即丢弃数据。

2.vm-storage性能表现

  • CPU占用:0.88核~0.94核 (相当于CPU资源已经到瓶颈了)
  • 内存:4.71GB, 占58.9%
  • 网络入流量:2.94mb/s
  • 磁盘读:3.28MB,最高延迟 124ms
  • 磁盘写:6.18MB,最高延迟 150ms
  • 新的metric的占比 1%(2049条/s), slow insert的2460条/s , tsid cache的miss率 1%
  • 每秒写入的新metric数量:2460/s
  • 每秒总的time series写入量:24.6万/s
  • 新metric与索引数量的倍数关系:25.4 (平均每条metric创建将近25条索引)
  • vm-insert端:
    • 请求量:26.3万/s
    • 丢弃量:2.29万/s

3.总结

  • 当1%的metric是全新的时候,总体写入性能 24.6万/s,其中新metric写入性能 2460/s
  • CPU是主要瓶颈

vm-storage在新metric占整体1%情况下的写入性能测试的更多相关文章

  1. 微信小程序分享出去的页面再点进来,如何取值并且在新用户未授权的情况下,授权后跳到当前页面

    1.如何点击分享的页面进来,授权后跳转到当前页面 可以在授权成功后,将openid.头像.昵称入库成功之后,标记一下,及getStorageSync // 通过code获取openid getUser ...

  2. 在ubuntu 16.04 的vm中添加新网卡,同一网段不同ip

    在ubuntu 16.04 的vm中添加新网卡,同一网段不同ip 来源 https://blog.51cto.com/744478/2083672 在ubuntu 16.04 的vm中新加了一块网卡, ...

  3. CentOS系统在不重启的情况下为虚拟机添加新硬盘

    一.概述 用过虚拟机的都知道,如果在系统运行的时候去给虚拟机添加一块新设备,比如说硬盘,系统是读取不到这个新硬盘的,因为系统在启动的时候会去检测硬件设备.但是我们也可能会遇到这样的情况,比如正在运行比 ...

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

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

  5. 五种情况下会刷新控件状态(刷新所有子FWinControls的显示)——从DFM读取数据时、新增加子控件时、重新创建当前控件的句柄时、设置父控件时、显示状态被改变时

    五种情况下会刷新控件状态(刷新控件状态才能刷新所有子FWinControls的显示): 在TWinControls.PaintControls中,对所有FWinControls只是重绘了边框,而没有整 ...

  6. a标签在编辑器中可以整体删除并且a标签为不可编辑的情况下 标签依然存在(棒棒哒)

    a标签在编辑器中可以整体删除并且a标签为不可编辑的情况下 标签依然存在 因为给a标签的后面 添加了一个空元素,如<i></i>(棒棒哒)<div contentEdita ...

  7. ECMAScript和JavaScript的区别,ECMAScript发展更新历史,ECMAScript5和ECMAScript6的新特性及浏览器支持情况,ECMAScript 5/ECMAScript 2015正式发布

    ECMAScript和JavaScript的区别 ECMA是European Computer Manufacturers Association的缩写,即欧洲计算机制造商协会.欧洲计算机制造商协会是 ...

  8. Linux 在不重启的情况下识别新挂载的磁盘

    在使用 Linux 时,有时候会因为初始时磁盘空间分配估计不足,使用中需要将挂载点扩容的情况,这就需要我们挂载新的磁盘.但是如果我们在 Linux 运行过程中挂载磁盘, Linux 又不能在不重启的情 ...

  9. top---实时动态地查看系统的整体运行情况

    top命令可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具.通过top命令所提供的互动式界面,用热键可以管理. 语法 top(选项) 选项 -b:以批处理模式 ...

  10. 【转载】linux如何将新硬盘挂载到home目录下

    举例说明: 新增磁盘的设备文件名为 /dev/vdb 大小为100GB. #fdisk -l 查看新增的的磁盘 1.对新增磁盘进行分区 #fdisk /dev/vdb 按提示操作 p打印 n新增 d ...

随机推荐

  1. React Native UI界面还原,组件布局与动画效果

    写React Native UI和写 Android XML layout 布局 ,个人感觉是大同小异 在<ReactJS到React-Native,架构原理概述>里面提过 web 环境中 ...

  2. 渗透测试 vs 漏洞扫描:差异与不同

    渗透测试和漏洞扫描常常被混淆,这两者都通过探索系统来寻找 IT 基础架构中的弱点及易受攻击的地方.阅读本文,带你了解两者之间的差异与不同. 手动 vs 自动 渗透测试是一种手动安全评估方式,网络安全人 ...

  3. 新变化新营销 这些知识点你得 Get!(文末有 PPT 福利首次放送)

      更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在刚刚结束的第 7 期火山引擎数智平台 VeDI「增长课堂」上,火山引擎数智平台 VeDI 零售行业解决方案. ...

  4. Windows 2016 安装 Docker

    打开 PowerShell Windows PowerShell 版权所有 (C) 2016 Microsoft Corporation.保留所有权利. PS C:\Users\Administrat ...

  5. 01-什么是 Java:Java 初学者指南

    什么是Java? Java 是一种用于互联网分布式环境的面向对象编程语言.它是一种高级语言,也易于阅读和理解.有了它,开发人员可以"编写一次,随处运行"(WORA),这意味着编译后 ...

  6. AIGC加速迭代,云栖大会视频云「媒体服务」专场与你共话云智深度融合

    2023杭州·云栖大会 倒计时5天! 阿里云视频云 5大并行Session 11场话题演讲 深度演绎云智融合的全面进化 「媒体服务」Tech专场 重磅议题剧透来袭 01 「媒体服务」Tech • 新数 ...

  7. 【k8s】基础环境配置部署

    基础环境配置部署 Hzero部署练习参考文档 https://docs.qq.com/sheet/DQWxlRlBXZmJ4b01G?tab=BB08J2&_t=1684458310312&a ...

  8. Cpp 值的种类划分

    本博文会介绍移动语义的形式术语和规则.并且会正式的介绍值的类别,如 lvalue.rvalue.prvalue和 xvalue,并讨论了在绑定对象引用时的作用.也会讨论移动语义不会自动传递的细节,以及 ...

  9. PVE API创建虚拟机

    度娘,谷歌都搜了一圈没有找到通过PVE API创建虚拟机的方式, 于是查官网自己试了试,部分代码抄的Sam Liu大佬的作业,感谢大佬. python代码如下: import requests # s ...

  10. 【收藏】Stable Diffusion 制作光影文字效果

    大家对于最近 Stable Diffusion 不断出新的视觉"整活"印象都很深刻,很多人对最近比较流行的制作光影文字很感兴趣,制作光影文字可以作为进阶 Stable Diffus ...