当前位置: 首页 > news >正文

ESrally单机向量检索性能测试全流程

ESrally单机向量检索性能测试全流程

测试方案的尝试

准备测试 ES 的向量检索性能,Vespa 方案由于下载依赖库存在网络问题无法执行成功,终止;开源工具 ann-benchamrk 是一个用于评估近似最近邻(ANN)搜索库的性能测试工具,这个本是最佳选择,但是也由于需要 pip 安装几十个依赖和 docker 构建十分麻烦,且详细的教程介绍太少,最后还是选择 esrally 进行性能测试,这个也是 ES 官方博客所使用的。

测试环境

uname -r
# 5.4.6-1.el7.elrepo.x86_64 内核版本
lscpu
# Intel(R) Xeon(R) Gold 6130T CPU @ 2.10GHz 处理器型号
# Architecture:          x86_64 架构
cat /etc/redhat-release
# CentOS Linux release 7.4.1708 (Core) 操作系统版本
python3 --version 
# Python 3.10.11

在线安装 esrally

pip3 install esrally

Httpx 版本冲突

由于之前安装了其他 ollama-python 0.1.2 导致一些依赖版本冲突:

ERROR: pip’s dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
ollama-python 0.1.2 requires httpx<0.27.0,>=0.26.0, but you have httpx 0.27.0 which is incompatible.
ollama-python 0.1.2 requires responses<0.25.0,>=0.24.1, but you have responses 0.18.0 which is incompatible.

处理办法:pip 3 uninstall ollama-python

安装完查看一下 esrally 版本(不能直接使用 esrally):

cd /root/python3/Python-3.10/bin
# ./esrally --version
esrally 2.10.0./esrally --help

返回内容如下(有省略):

usage: esrally [-h] [--version] {race,list,delete,info,create-track,compare,build,download,install,start,stop,add} ...____        ____/ __ \____ _/ / /_  __/ /_/ / __ `/ / / / / // _, _/ /_/ / / / /_/ /
/_/ |_|\__,_/_/_/\__, //____/You Know, for Benchmarking Elasticsearch.options:-h, --help            show this help message and exit--version             show program's version number and exitsubcommands:{race,list,delete,info,create-track,compare,build,download,install,start,stop,add}

Dense vector track 介绍

rally-tracks/dense_vector at master · elastic/rally-tracks (github.com)

本赛道(track)用于对密集向量场的索引和搜索进行基准测试。

该数据集包含 1,000 万个矢量,维度为 96。该数据集基于 Yandex DEEP 1 B 图像数据集,可在此处下载:https://big-ann-benchmarks.com/。
数据集由名为 learn.350M.fbin 的 "样本数据 "文件的前 1000 万个向量创建。

使用下面这个命令生成 JSON 格式数据集:

python3 _tools/parse.py data/learn.350M.fbin > documents.json

文档示例

{"vector": [0.21529805660247803, -0.06119159981608391, 0.08770883828401566, 0.08731604367494583, -0.03312725946307182, -0.06861377507448196, 0.011172166094183922, 0.08099681884050369, 0.06873716413974762, -0.10662394016981125, -0.06803347170352936, -0.22509372234344482, 0.04775683954358101, -0.11963146924972534, -0.13713325560092926, 0.040520284324884415, 0.03633395954966545, -0.06001321226358414, 0.05640476569533348, -0.1323852241039276, 0.09493865817785263, 0.08581436425447464, 
http://www.lryc.cn/news/345124.html

相关文章:

  • 小红书释放被封手机号 无限注册
  • Docker快速启动清单
  • 京东手势验证码-YOLO姿态识别+Bézier curve轨迹拟合
  • 亚马逊是如何铺设多个IP账号实现销量大卖的?
  • linux学习笔记——硬盘原理以及linux中的sector与block
  • 【OceanBase诊断调优】—— 磁盘性能问题导致卡合并和磁盘写入拒绝排查
  • 使用unreal engine5.3.2创建c++第一人称游戏
  • 关系型数据库的一种自动测评方式
  • 速盾:服务器cdn加速的具体实现方式?
  • 【QT教程】QT6音视频处理权威指南 QT音视频
  • cmd输入mysql -u root -p无法启动
  • word 毕业论文格式调整
  • 移动UI瓷片区能有多漂亮?要多漂亮就多漂亮。
  • SpringCloud Config 分布式配置中心
  • Java入门基础学习笔记2——JDK的选择下载安装
  • 基于FPGA的去雾算法
  • 专题六_模拟(2)
  • [qnx] 通过zcu104 SD卡更新qnx镜像的步骤
  • 论文AIGC检测让毕业生头疼,如何有效降低AI查重率!
  • FineBI学习:K线图
  • Chronos:学习时间序列的大语言模型(代码解析)
  • 云南区块链商户平台优化开发
  • 深圳六西格玛培训:引领职场“薪”途无限
  • Spark云计算平台Databricks使用,创建workspace和Compute计算集群(Spark集群)
  • 银河麒麟服务器系统audit服务组件升级、进程彻底关闭介绍
  • 设计模式——装饰者模式(Decorator)
  • 力扣:406. 根据身高重建队列
  • Docker 怎么将映射出的路径设置为非root用户权限
  • Linux——进程的优先级、ACL
  • 【C++】STL-list模拟实现