반응형
I. 복합 비정형 데이터의 효율적인 저장/검색, 벡터 데이터베이스의 개요
- 문자, 이미지, 음성, 동영상과 같은 복합 비정형 데이터를 효율적으로 저장/검색하기 위해 벡터 데이터로 표현하여 저장, 관리 및 처리하도록 설계된 데이터베이스
- 특징 : 확장성, 조정 가능성, 멀티 테넌시, 데이터 격리
II. 벡터 데이터베이스의 아키텍처 및 주요기술
가. 벡터 데이터베이스의 아키텍처
- 벡터 데이터베이스 기능을 REST API 형태로 제공하여 다양한 언어에서 접근 및 활용 가능
나. 벡터 데이터베이스의 주요기술
구분 | 주요기술 | 설명 |
외부영역 | REST API | - 다른 응용 프로그램에서 벡터 데이터베이스를 사용하도록 관리 - HTTPS 호출 형태로 클라이언트 호출 수행 |
내부영역 | 단일단계 필터링 | - 메타데이터를 통한 필터링 - Post-Filtering: 벡터 검색 후 메타데이터 필터링 수행, 모든 관련 결과를 고려하는데 도움이 되지만 검색 완료 후 관련 없는 결과를 필터링해 추가 오버헤드 발생 - Pre-Filtering: 벡터 검색 전 메타데이터 필터링 수행, 검색 공간을 줄이는데 도움이 되지만 시스템에서 메타데이터 필터 기준과 일치하지 않는 관련 결과를 간고할 가능성 존재 |
벡터 인덱스 | - 벡터를 효율적으로 인덱싱하여 검색하도록 설계된 알고리즘 - Random Projection, Product Quantization, Loclity-sensitive hashing, HSNW(Hierarchical Navigable Small World) 알고리즘을 이용하여 벡터 인덱스 생성 |
|
데이터 샤딩 | - 벡터를 샤드로 균등하게 분할하고 각 샤드 검색 후 마지막에 모든 샤드의 결과를 결합하여 가장 일치하는 것을 결정 | |
복제 | - 전체 Pod 세트를 복제하여 더 많은 요청을 병렬로 처리 | |
하이브리드 스토리지 | - 압축된 벡터 인덱스는 인메모리 저장 - RAW 벡터 인덱스는 디스크 저장 |
|
Kubernetes Pod | - 벡터 데이터베이스에 대한 Scale-Out을 수행하기 위한 컨테이너 |
- 벡터 데이터베이스는 ANN(Approximate Nearest Neighbor) 검색에 모두 참여하는 서로 다른 알고리즘의 조합 사용
III. 벡터 데이터베이스 활용사례
활용사례 | 설명 |
시멘틱 검색 | - 자연어 처리 모델의 벡터 임베딩을 저장, 인덱싱하여 텍스트 문자열, 문장 및 전체 문서의 의미와 컨텍스트를 이해하여 보다 정확하고 관련성 높은 검색 결과 제공 |
랭킹, 추천엔진 | - 협업 필터링이나 인기 목록에 의존하지 않고 개인에 맞는 완벽하게 일치하는 추천 생성 - ANN 항목 기반으로 유사한 항목을 찾는 기능을 통해 관련 제안을 제공하는 데 이상적, 유사성 점수를 기반으로 항목 순위를 쉽게 지정 |
중복제거, 레코드 일치 | - 유사성 서비스를 사용하여 중복된 레코드를 찾는 것은 광범위한 애플리케이션에서 사용 |
- 비정형 데이터 유사성 검색에도 활용 가능
※출처: (주)호연 기술자료
반응형
'IT기술노트 > 데이터베이스' 카테고리의 다른 글
공공데이터 예방적 품질관리 방안 (1) | 2024.06.03 |
---|---|
데이터베이스 보안 3대요소 (0) | 2023.10.06 |
관계형 데이터베이스 조인 (Nested Loops, Sort Merge, Hash, Semi) (0) | 2022.12.22 |
DQC (Database Quality Certification) (0) | 2022.12.08 |
데이터 무결성 (Data Integrity) (0) | 2022.09.01 |
다중버전 동시성 제어(MVCC, Multi-Version Concurrency Control) (1) | 2021.09.20 |
데이터베이스 샤드(Database Shard) (0) | 2021.03.07 |
In-Memory Database (0) | 2021.03.07 |
댓글