测试环境
更新时间:2024-03-27
百度向量数据库 VectorDB 是一款纯自研高性能、高性价比、生态丰富且即开即用的向量数据库服务,提供高效的向量索引和相似度查询服务。为了让用户更好地了解VectorDB的性能表现,VectorDB性能白皮书详细描述了性能测试环境、测试方法和测试结果。本章节说明性能测试所需的环境与数据集。
数据库规格
测试实例规格如下表格所示:
规格项 | 规格信息 |
---|---|
数据库类型 | 标准版 |
代理节点数 | 2 |
数据节点规格 | 4c8g(4核心,8GB内存) |
数据节点数 | 3 |
该规格所支持的最大向量规模,请参见产品规格,并按照以上规格新建向量数据库实例,具体操作的流程,请参见“快速指南-创建实例”。
客户端测试环境
与百度云向量数据库实例为同一地域同一VPC内的云服务器,其环境要求如下:
- 操作系统:CentOS / 8.4 x86_64 (64bit)
- 规格:8c16g(8核心,16GB内存)
说明: 在使用BCC连接VectorDB实例时,需要在BCC关联的安全组中配置出站规则,把百度VectorDB实例的IP及端口添加到出站规则中,避免因为安全组的问题导致连接失败。
测试工具
我们基于Go语言自研了性能测试工具ann-benchamrk,用于评估近似最近邻(ANN)检索库的性能测试工具,能够避免客户自行解决客户端依赖,快速进行性能测试和对比。它提供了一套标准的测试数据集和评估指标,可以用于比较不同量级数据集下向量数据库的性能表现。
本测试基于该ann-benchmark进行,以下是测试工具的运行方法:
./bin/ann-benchmark -conf ./conf/conf.toml
参数 | 参数含义 |
---|---|
-conf | 测试工具的配置文件路径,默认为conf文件夹下的conf.toml文件,具体配置文件中配置项含义,会在测试方法小节中详细介绍 |
数据集
测试过程使用的官方数据集都需要提前下载,测试工具在运行时会检查./dataset
目录(ann-benchmark工具的根目录)下是否存在数据集文件,为了确保在使用测试工具时无需另外单独安装环境依赖,百度云向量数据库团队转换提供了parquet文件格式的ann数据集,并制作了Cohere 768维度数据集。具体数据集信息,如下表所示:
数据集名 | 数据集介绍 | 向量维度 | 向量数 | 距离类型 |
---|---|---|---|---|
SIFT_1M | 官方数据集 | 128 | 1,000,000 | L2 |
GIST_1M | 官方数据集 | 960 | 1,000,000 | L2 |
COHERE_1M | 官方数据集 | 768 | 1,000,000 | IP |