五厂面经真题集快手面经高频网易面经高频快手真题向量库选型大模型面试速答 · 约 5 分钟更新 2026-09-29

为什么不用 Milvus 或 Elasticsearch?向量库选型怎么解释?

一句话结论

我会按数据规模、QPS、检索方式、运维能力和一致性要求选型;当前规模用 pgvector 加 BM25 足够,规模上来再迁移 Milvus。

先这样答

我不会先回答选 Milvus 还是 Elasticsearch。我会先看数据规模、QPS、检索方式、团队运维能力和一致性要求。当前是百万级数据时,pgvector 已经够用。它能减少额外的运维成本,所以我会优先选择 pgvector。

如果业务需要混合检索,我会把向量检索和 BM25 组合起来。ES 强在关键词检索,Milvus 强在大规模向量检索。两者都不是所有场景的默认答案。我要先确认业务更看重哪类检索,以及当前规模是否真的需要单独的向量数据库。

我的演进方案是先用 pgvector 加 BM25 满足当前需求。这个方案能覆盖当前规模,也方便团队维护。数据量和访问压力继续上升后,再评估迁移到 Milvus。面试时我会说明迁移触发条件,并补充一致性要求和团队能力。这样回答重点在判断过程,不在背产品名。

面试官会怎么追问

  • 「什么情况下你会直接选择 Milvus?」
    当数据规模和 QPS 上升,当前方案无法继续满足需求时,我会评估 Milvus。它更适合大规模向量检索。最终仍要结合团队的运维能力和一致性要求判断。

  • 「为什么不直接用 Elasticsearch 做向量检索?」
    我会先看检索类型。ES 强在关键词检索,如果业务需要混合检索,它可以参与 BM25 部分。若核心需求是大规模向量检索,我会重点评估 Milvus。

  • 「你说的迁移条件具体该怎么判断?」
    我会观察数据规模和 QPS 是否已经超出当前方案的承受范围。还要确认团队是否具备维护新组件的能力。迁移前也要检查一致性要求是否允许这次调整。

回答的坑

  • 不要把 Milvus、ES 或 pgvector 说成固定答案,要先说明数据规模、QPS 和检索方式。
  • 不要只谈性能和产品名,还要交代运维能力、一致性要求以及从当前方案演进的判断。

这家公司的面经实录

—— 本题完 ——