pg_sorted_heap: 정렬된 힙 저장소와 벡터 검색을 위한 PostgreSQL 확장 기능
기본 키를 통해 물리적 데이터 순서를 유지하는 맞춤형 테이블 접근 방법을 소개합니다. 유사성 검색을 최적화하기 위해 기본 벡터 유형에 대한 HNSW 인덱스 지원을 구현합니다.
운영 중pg_sorted_heap
수십 년 동안 PostgreSQL은 저장을 위해 힙에 의존하며 정렬은 인덱스에 맡겼습니다. pg_sorted_heap은 데이터를 물리적으로 구성하는 테이블 접근 방법을 도입하여 이에 도전합니다. 기본 키와 영역 맵 가지치기를 활용하여 범위 검색 및 정렬된 검색을 위한 I/O 오버헤드를 효과적으로 줄이고 테이블 자체를 클러스터형 구조로 처리합니다. 이는 범위 기반 쿼리가 지배적이고 인덱스 비대화가 우려되는 워크로드에 실용적인 접근 방식입니다.
저장소를 넘어 이 확장 기능은 Postgres를 AI 스택에 더욱 밀접하게 만듭니다. 내장 벡터 유형을 위한 HNSW (계층적 탐색 가능한 작은 세계) 통합은 최신 LLM 애플리케이션에 필요한 고성능 근사 최근접 이웃 (ANN) 검색을 제공합니다. 가장 야심찬 추가 기능은 GraphRAG 도구입니다. 데이터베이스 내에서 직접 그래프 기반 검색 증강 생성을 허용함으로써 관계형 저장소와 별도의 그래프 데이터베이스 간 데이터 동기화의 일반적인 '아키텍처 세금'을 제거합니다.
기술적 관점에서 강점은 통합에 있습니다. 약점은 맞춤형 접근 방법의 고유한 복잡성입니다. 물리적 순서 유지는 삽입 및 업데이트 중 쓰기 페널티 (조각화)를 수반하며 데이터베이스 관리자가 관리해야 합니다. 그러나 분산된 벡터 데이터베이스 및 그래프 데이터베이스 스택 관리에 지친 엔지니어에게는 이러한 절충안이 매력적입니다.
대기 시간과 운영 오버헤드를 최소화하려는 RAG 파이프라인을 구축하는 데이터 엔지니어에게 이는 고부가가치 도구입니다. 애플리케이션에 관계형 메타데이터, 벡터 임베딩, 그래프 관계 간의 긴밀한 통합이 필요한 경우 pg_sorted_heap은 Postgres를 저장 계층에서 포괄적인 검색 엔진으로 변환합니다.