性能评估

    • 1百万条512维向量(总大小:GB)
    • 1亿条512维向量(总大小:GB)

    相关数据集

    创建名为 milvlus_sift1m 的文件夹,然后下载以下数据集和测试脚本到该文件夹。

    Milvus 参数配置

    配置文件:/home/$USER/milvus/conf/server_config.yaml

    配置文件参数编辑完毕后,重启 Milvus Docker 使配置生效。

    第1步:启动 Milvus 服务

    1. # start Milvus
    2. $ nvidia-docker run -td --runtime=nvidia -p 19530:19530 -p 8080:8080 -v /home/$USER/milvus/db:/opt/milvus/db -v /home/$USER/milvus/conf:/opt/conf -v /home/$USER/milvus/logs:/opt/milvus/logs milvusdb/milvus:0.3.1

    导入数据之前,首先确保 bvecs_data 文件夹与测试脚本 milvus_bootcamp.py 都放在 milvus_sift1m 目录下

    进入 milvus_sift1m 目录,运行如下脚本:

    脚本会创建一张名为 ann_1m_sq8 的表,它采用的索引类型为 ivfsq8 ,数据将导入该表:

    第3步:性能测试

    1. $ python3 milvus_bootcamp.py --table=ann_1m_sq8 -s

    第4步:分析结果

    运行结束后,将会生成一个名为 performance_results 的文件夹,在该文件夹下会有一个名为 xxx_results.csv 的文件,xxx 代表执行命令的时间。文件内容如下图所示(未完全展示):

    1m_per_10_20

    • nq - 要查询的向量条数
    • total_time - 查询 nq 个向量的前 k 个相似向量一共花费的时间,单位:秒
    • avg_time - 查询一个向量的 topk 个相似向量的平均时间,单位:秒

    硬件要求

    创建名为 milvlus_sift100m 的文件夹,然后下载以下数据集和测试脚本到该文件夹。

    • 1亿测试向量数据集

      将数据文件都解压到 milvus_sift100M/bvecs_data/ 文件夹下。解压完成后 milvus_sift100M/bvecs_data/ 文件夹里将会有 1,000 个 npy 文件,每个 npy 文件中存放 10 万条向量数据,共 1 亿条。

    • 搜索结果对照

    Milvus 参数配置

    配置文件:/home/$USER/milvus/conf/server_config.yaml

    配置文件参数编辑完毕后,重启 Milvus Docker 使配置生效。

    第1步:启动 Milvus 服务

    1. # start Milvus
    2. $ nvidia-docker run -td --runtime=nvidia -p 19530:19530 -p 8080:8080 -v /home/$USER/milvus/db:/opt/milvus/db -v /home/$USER/milvus/conf:/opt/conf -v /home/$USER/milvus/logs:/opt/milvus/logs milvusdb/milvus:0.3.1

    第2步:导入测试数据

    导入数据之前,首先确保 bvecs_data 文件夹与测试脚本 milvus_bootcamp.py 都放在 milvus_sift100m 目录下。

    进入 milvus_sift100m 目录,运行如下脚本:

    脚本会创建一张名为 ann_1m00_sq8 的表,它采用的索引类型为 ivfsq8,数据将导入该表:

    为评估 Milvus 的查询性能,进入 milvus_sift100m 目录,运行如下脚本:

    1. $ python3 milvus_bootcamp.py --table=ann_100m_sq8 -s

    第4步:分析结果

    100m_per

    • nq - 要查询的向量条数
    • topk - 查询某个向量的前 k 个相似的向量
    • - 查询 nq 个向量的前 k 个相似向量一共花费的时间,单位:秒
    • avg_time - 查询一个向量的 topk 个相似向量的平均时间,单位:秒