VectorDBBench 是为追求高性能数据存储和检索系统的用户设计的开源性能测试工具,它允许用户测试和比较不同向量数据库系统的性能,以确定最适合的数据库系统。本文为您介绍Hologres在VectorDBBench上进行性能对比测试的方法。
测试环境
测试环境如下:
Hologres实例规格:CPU:32 Core,内存:128 GB。
Hologres实例版本:V4.0.1版本。
ECS实例规格:建议ecs.c9i.16xlarge起。
ECS与Hologres实例位于相同地域和可用区,并使用相同的VPC网络。
Hologres向量计算功能使用HGraph索引。
Hologres实例基于K8s容器化部署,由于向量检索的QPS极高,实际性能可能因网络和实际负载产生差异。
如有问题,可在Hologres交流群反馈,加入Hologres交流群请参见如何获取更多的在线支持?。
测试过程
环境准备。
准备Hologres实例。
购买Hologres V4.0版本实例并创建数据库。
创建用户。具体操作,请参见用户管理。
准备ECS实例。
购买ECS实例。具体操作,请参见控制台快速购买并使用ECS实例。
安装依赖。
(可选)安装Git,若已安装可跳过此步骤。
apt-get update apt install git
(可选)安装Python 3.11,若已安装可跳过此步骤。
apt-get update apt install python3-full python3-venv cd /opt python3 -m venv venv source venv/bin/activate
安装VectorDBBench。
# clone VectorDBBench git clone https://github.com/zilliztech/VectorDBBench.git cd VectorDBBench # install deps pip3 install -U pip -i https://mirrors.aliyun.com/pypi/simple pip3 install --no-cache-dir -r install/requirements_py3.11.txt -i https://mirrors.aliyun.com/pypi/simple pip3 install -e . -i https://mirrors.aliyun.com/pypi/simple
启动性能测试。
如果多次重复跑性能时,可以在上述命令后面加上
--skip-drop-old --skip-load
,可以跳过导入数据的过程。NUM_PER_BATCH=100000 vectordbbench hologreshgraph --host <hologres_instance_vpc_endpoint> --port <port> --user '<username>' --password <password> --database <database_name> --m 64 --ef-construction 400 --case-type Performance768D10M --index-type HGraph --ef-search 400 --k 10 --num-concurrency 1,60,70,75,80,90,95,100,105,110,115,120 --db-label 32c128g-4.0-hybrid-index
参数说明:
参数
说明
hologres_instance_vpc_endpoint
Hologres的网络信息和端口号。
您可登录Hologres管理控制台,单击目标实例ID,在实例详情页的网络信息区域,获取对应的网络信息和端口号。
port
username&password
Hologres实例的用户账号和密码。
您可登录Hologres管理控制台,单击目标实例ID,在实例详情页单击用户管理,获取账号信息。
database_name
Hologres实例的数据库名称。
您可登录Hologres管理控制台,单击目标实例ID,在实例详情页单击数据库管理,获取数据库信息。