milvus资源限制 benchmarker压测 qps优化

devtools/2024/12/22 13:14:56/

在这里插入图片描述
根据milvus 资源限制的官网,我们得出百万数据资源限制。

1.dev 环境 对接不同的配置最大的qps 如下(dev的机器内存很小)
在这里插入图片描述
2.于是认为当前的性能是匹配的,然后加上资源限制,配置
在这里插入图片描述
压测结果如下

{"run_id": "13292982fee74f64a6352886bd2e48c1","task_label": "13292982fee74f64a6352886bd2e48c1","results": [{"metrics": {"max_load_count": 0,"load_duration": 1921.7745,"qps": 1562.3437,"serial_latency_p99": 0.0059,"recall": 0.5972,"ndcg": 0.6318,"conc_num_list": [1, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100],"conc_qps_list": [195.3319, 790.9781, 1080.3159, 1373.9811, 1432.1278, 1440.8132, 1433.1897, 1491.7838, 1493.107, 1481.4041, 1502.0799, 1508.3413, 1530.3134, 1521.0524, 1547.9447, 1549.8126, 1555.2589, 1562.3437, 1544.5287, 1552.6871, 1545.3059],"conc_latency_p99_list": [0.004279492217302322, 0.004500870367884636, 0.004731282425113022, 0.005114195805042982, 0.005836073917336762, 0.006389325391501189, 0.006925125846266747, 0.008031808454543352, 0.006713001053780317, 0.007038204529695212, 0.008382701979205012, 0.005965838904678822, 0.006431116539426148, 0.010065575167536735, 0.007617924952134489, 0.007334843980520961, 0.009211420500651001, 0.00817261971924454, 0.006796466001681981, 0.006674074270576239, 0.00732990248594433]},"task_config": {"db": "Milvus","db_config": {"db_label": "2024-08-20T10:48:40.903270","uri": "**********"},"db_case_config": {"index": "IVF_FLAT","metric_type": "COSINE","nlist": 1024,"nprobe": 5},"case_config": {"case_id": 50,"custom_case": null,"k": 100,"concurrency_search_config": {"num_concurrency": [1, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100],"concurrency_duration": 30}},"stages": ["drop_old", "load", "search_serial", "search_concurrent"]},"label": ":)"}],"file_fmt": "result_{}_{}_{}.json"
}

很诧异,开始排查问题的所在:
1.第一先考虑的是不是obs 的问题
于是又在dev环境加上资源限制,得到的结果:
在这里插入图片描述
那就不是obs 的问题
2.考虑一下是不是pulsar 的问题,在这个过程,要感谢一下社区,问了得到明确的结论是pulsar 只落盘,不参与数据的查询操作。但是得出结论
还是保持质疑,刚好dev 环境没有资源,不能限制pulsar ,发现性能还是很差,所有排除pulsar问题

3.后来运维同学通过监控发现queryNode CPU 涨的很快,就将资源改成
6c 8g ,果然性能提高到无资源限制的qps 维度。
在这里插入图片描述
4.扩展一下:再最终到生产环境上线发现,资源并没有达到预期的qps (需要关上认证才能压测哦)
如下图
在这里插入图片描述
这个时候就非常诧异,随机就对比sit 环境资源配置和grafana 资源消耗情况
在这里插入图片描述
最终同时发现 proxy pod 资源消耗和queryNode pod 是正相关关系,然后看了一下sit 环境的资源配置,不知道在哪次的修改中将资源改为8c 16g。
故将生产环境改为proxy 8c16g .queryNode:8 core 16 GB 副本数为1
压测结果如下
在这里插入图片描述
qps 达到7400+!!!

然后逐渐扩容querynode 为3 ,性能如下

在这里插入图片描述
性能并没有提高多少!
最后逐渐扩容querynode 为5 ,性能如下
在这里插入图片描述
性能并没有提高多少!

额外的例子:3 proxy 1querynode

在这里插入图片描述
性能并没有提高多少!
总结:1。官网提供的资源配置,应该是以数据为主的,但是如果对milvus 有性能要求,应该提高 proxy 和 queryNode 的资源。它们的资源是呈正相关的,单纯扩容其中某一个是不能实现qps 性能的提升的。同时修改的核心是CPU,其实是开启线程,进行I/O。友情提示:还是看各位看官,场景实际的数据量 和 并发数,动态更改


http://www.ppmy.cn/devtools/103272.html

相关文章

【 数据建模与预测】数据建模的基本方法与预测技术

数据建模与预测 数据建模的基本方法与预测技术 引言 在大数据时代,数据建模与预测技术是将数据转化为可操作性洞察的关键手段。数据建模通过数学模型表达数据中的关系,预测技术则利用这些模型对未来进行推测。本文将探讨数据建模的基本方法与常用的预测…

Android 获取设备相关信息

在做某些项目时,需要上传必要的设备信息给服务器用于风控 在此做一下总结。 一.获取的数据 主要包含下面数据 设备id操作系统版本设备型号IMSI路由器mac地址设备mac地址安卓id经度纬度ip地址谷歌广告id手机可用内存apk可用内存apk可分配的最大内存手机总内存cpu…

【小白深度学习入门】【1】卷积神经网络CNN 结构、基本原理以及常见问题详解

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 👍感谢小伙伴们点赞、关注! 《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发…

十五分钟速通Vue

绑值语法( {{}} ) <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </head…

用AI工具制作高质量PPT的完整教程

其实使用AI或者ChatGPT写PPT的方式有很多种 下面主要说明两种方式&#xff0c;建议第二种方式 接下来我会用最简单的语言&#xff0c;一步一步说明&#xff0c;保证你能在五分钟内做完你想要的PPT 具体方法和工具&#xff0c;都在里面 1、手动生成 让ChatGPT帮你生成大纲和…

NTP简介及相关概念

NTP简介及相关概念 记录NTP相关的一些知识点。 1. 什么是NTP 1.1 NTP简介 网络时间协议NTP&#xff08;Network Time Protocol&#xff09;是TCP/IP协议族里面的一个应用层协议&#xff0c;用来使客户端和服务器之间进行时钟同步&#xff0c;提供高精准度的时间校正。NTP服…

sqlmap注入语句学习,帮助你排查SQL注入漏洞

摘要 sqlmap是一个开源的渗透测试工具&#xff0c;可以用来进行自动化检测&#xff0c;利用SQL注入漏洞&#xff0c;获取数据库服务器的权限。它具有功能强大的检测引擎&#xff0c;针对各种不同类型数据库的渗透测试的功能选项&#xff0c;包括获取数据库中存储的数据&#x…

详解数据结构-栈的基本操作以及栈数组、栈链表的实现(C语言代码实现)

1. 栈的概念 在开始前&#xff0c;请牢记这句话&#xff1a;栈是一种先进后出的数据结构。 栈&#xff08;stack&#xff09;是限定仅在表的一端进行操作的数据结构&#xff0c;请联系我们前文所学的&#xff0c;设想一个单链表我们只能够对其链表的表尾结点进行操作&#xf…