Configuration¶
AkasicDB를 안정적으로 운영하기 위한 주요 설정과 관리 방법을 정리합니다.
그래프 모듈 관련 GUC 파라미터¶
AkasicDB graph GUC parameter로 graph query planning을 조정합니다.
| 파라미터 | 설명 | 기본값 |
|---|---|---|
enable_graphplan |
쿼리 플래너의 그래프 특화 연산자 사용 여부 (true/false) |
false |
AkasicDB에서 제공하는 그래프 특화 연산자의 효율성은 그래프 질의의 복잡도와 데이터의 규모, 그리고 데이터의 특성에 따라 달라질 수 있습니다.
벡터 모듈 관련 GUC 파라미터¶
AkasicDB vector GUC 파라미터는 query planning이나 query execution에 적용됩니다. 인덱스 생성 옵션은 CREATE INDEX ... WITH (options = ...)에서 지정하며, GUC로 바뀌지 않습니다.
파라미터 일람¶
| 파라미터 | 설명 | 기본값 |
|---|---|---|
vectoron.enable_index |
쿼리 플래너의 벡터 인덱스 사용 여부 (true/false) |
true |
vectoron.hnsw_ef_search |
HNSW 검색 중 후보 탐색 폭 | 100 |
vectoron.ivf_nprobe |
IVF 검색 시 스캔할 cluster 수 | 10 |
vectoron.pgvector_compatibility |
pgvector 호환 모드 활성화 (true/false) |
false |
vectoron.search_mode |
검색 모드 ("vbase" 또는 "basic") |
"vbase" |
vectoron.vamana_l_search |
Vamana 검색 중 후보 탐색 폭 | 100 |
한 쿼리에만 적용하려면 transaction 안에서 SET LOCAL을 사용합니다.
BEGIN;
SET LOCAL vectoron.vamana_l_search = 200;
SELECT id
FROM items
ORDER BY embedding <-> '[0.1,0.2,0.3]'::vector
LIMIT 10;
COMMIT;
Search-time Parameters¶
| 파라미터 | 적용 대상 | 비고 |
|---|---|---|
vectoron.hnsw_ef_search |
HNSW query execution | HNSW 검색 중 후보 탐색 폭입니다. 값을 키우면 recall이 좋아질 수 있지만 latency와 CPU 비용도 늘 수 있습니다. |
vectoron.vamana_l_search |
Vamana query execution | Vamana 검색 중 후보 탐색 폭입니다. 값을 키우면 recall이 좋아질 수 있지만 latency와 CPU 비용도 늘 수 있습니다. build-time indexing.vamana.l_search와 다릅니다. |
vectoron.ivf_nprobe |
IVF query execution | query에서 scan할 IVF cluster 수입니다. 값을 키우면 recall이 좋아질 수 있지만 I/O와 latency가 늘 수 있습니다. build-time indexing.ivf.nlist와 다릅니다. |
운영 환경에 적용하기 전 실제 filter 조건과 데이터 분포에 가까운 query set으로 recall과 latency를 확인하시기 바랍니다.