Agent 엔지니어링

Milvus 멘탈 모델

표, 열, 행에서 시작해 벡터 전용 개념인 ANN 인덱스와 검색을 위한 Load를 더합니다.

핵심 객체
Milvus 비유 역할
Collection 동일한 Schema를 공유하는 Entity 집합
Schema / Field 테이블 정의 / 열 기본 키, 벡터 차원, 스칼라 타입 제약
Entity 안정적인 기본 키를 가진 하나의 비즈니스 객체
Index 인덱스 최근접 이웃 검색 가속
하나의 지식 Entity
{"id": 42, "vector": [0.12, ...], "text": "환불은 보통 3일 걸립니다",
 "category": "refund", "active": true}
Search, Query, Load

Search

질의 벡터와 스칼라 필터를 받아 거리 기준 Top-K를 반환합니다. “의미상 무엇이 가까운가?”에 답합니다.

Query

벡터 없이 기본 키나 스칼라 조건으로 데이터를 가져옵니다. “어떤 레코드가 조건을 만족하는가?”에 답합니다.

Load

Collection 데이터와 인덱스를 질의 노드에서 검색 가능하게 준비합니다. 생성되었다고 항상 검색 가능한 것은 아닙니다.

인덱스의 트레이드오프
Index 강점 비용 / 용도
FLAT 정확, 학습 불필요 전수 비교, 소규모 및 Recall 기준선
IVF_FLAT 클러스터로 후보 축소 nlist / nprobe 조정, 더 큰 규모
HNSW 높은 Recall과 낮은 지연 메모리와 빌드 시간 증가, 온라인 검색에 적합
수명주기: Schema 정의 → Collection 생성 → Entity 삽입 → Index 생성 → Load → Search/Query. 기본 키는 추적, 벡터는 유사도, 스칼라 필드는 테넌트·ACL·시간·상태 필터를 담당합니다.
Takeaway Search는 의미로 찾고 Query는 조건으로 가져옵니다. Index는 속도를, Load는 검색 준비 상태를 결정합니다.