벡터 인덱스 벤치마킹: 숫자가 왜 의미 없는지, 그리고 제대로 측정하는 방법

Benchmarking Vector Indexes

벡터 인덱스 벤치마킹: 숫자가 왜 의미 없는지, 그리고 제대로 측정하는 방법

거의 모든 데이터베이스가 벡터 검색을 제공하지만, 대부분의 벤치마크는 재현할 수 없는 숫자만 내세웁니다. Percona는 벡터 인덱스의 성능을 공정하게 비교하기 위해 오픈소스 벡터-벤치를 구축했습니다. 이 글은 HNSW와 IVF의 작동 방식, recall과 throughput의 트레이드오프, 그리고 벤치마크가 측정하는 항목(빌드 비용, 동시성, 필터링 검색)을 설명합니다. 특히, 엔진별로 결과를 왜곡할 수 있는 설정(예: PostgreSQL의 TOAST)을 강조하며, 단일 숫자로는 인덱스 성능을 평가할 수 없다고 주장합니다.

ef_search=10일 때 초당 3,678쿼리, recall 0.9593, ef_search=800일 때 초당 409쿼리, recall 0.9987. 두 숫자 모두 동일한 인덱스와 하드웨어에서 측정한 정직한 결과입니다.

이 날의 다른 글

2026-09-01