Edge API - Qdrant
Edge API - Qdrant (edge-edge-api)
Qdrant Edge 샤드로 작업하려면 Python Bindings for Qdrant Edge 패키지 또는 qdrant-edge Rust 크레이트를 사용해 주세요. 둘 다 데이터 관리, 쿼리, 스냅샷 복원을 위한 메서드를 가진 EdgeShard 타입을 제공해요.
작업 중심의 입문서는 퀵스타트(Quickstart)와 데이터 동기화 패턴(Data Synchronization Patterns)을 참고해 주세요.
레퍼런스 (Reference)
| 페이지 | 다루는 내용 |
|---|---|
| 샤드 수명 주기 (Shard Lifecycle) | Edge 샤드 생성, 로드, 검사, 플러시, 닫기, 그리고 info로 메타데이터 읽기 |
| 구성 (Configuration) | EdgeConfig, 밀집·희소 벡터 파라미터, 옵티마이저 설정과 optimize, WAL 옵션 |
| 데이터 업데이트 (Updating Data) | update 메서드와 전체 업데이트 연산 집합 |
| 데이터 읽기 (Reading Data) | query, scroll, 그룹화, retrieve, count, facet |
| 스냅샷 (Snapshots) | 스냅샷 풀기, 매니페스트 읽기, 샤드에 스냅샷 적용하기 |
언어별 차이 (Language Differences)
Python 바인딩과 Rust 크레이트는 동일한 핵심 표면을 다루지만 완전히 동일하지는 않아요. 각 메서드는 사용 가능한 언어를 명시하고 있어요. 가장 중요한 차이점은 다음과 같아요:
- Rust는 Python에 해당하는 것이 없는
query_groups와search_matrix를 노출해요. 둘 다EdgeShardRead트레이트가 스코프에 있어야 해요. - Rust는 샤드를 drop해서 닫는 반면, Python에는 명시적인
close메서드가 있어요. - WAL 옵션과 구성 세터(setter)는 Rust 전용이에요.
- Python의
EdgeConfig는 항상vectors또는sparse_vectors를 요구하므로, 기존 샤드의 튜너블 파라미터를 조정하려면 벡터를 다시 선언해야 해요. Rust는 튜너블만 설정하는 구성을 만들 수 있어요. - 스냅샷 적용은 Python에서는 샤드를 제자리에서 업데이트하지만, Rust에서는 새 샤드를 반환해요.
더 많은 예제 (More Examples)
Qdrant GitHub 저장소에는 Python과 Rust로 Qdrant Edge API를 사용하는 예제가 포함되어 있어요.