Table of Contents
DeepLearning
벡터 데이터베이스(Vector DB)와 전통적인 관계형 데이터베이스(RDBMS, 예: Oracle)의 주요 차이점
꼬꼬마코더 2024. 11. 1. 12:10728x90
벡터 데이터베이스(Vector DB)와 전통적인 관계형 데이터베이스(RDBMS, 예: Oracle)의 주요 차이점은 데이터 구조와 쿼리 방식입니다. 각 DB가 해결하는 문제의 성격과 목적이 달라, 데이터 저장 방식과 검색 기능에서도 차이가 납니다.
1. 데이터 구조
- 벡터 DB: 주로 고차원 벡터 데이터를 저장하고 이를 기반으로 유사도 검색을 수행합니다. 각 데이터가 수백 또는 수천 개의 값(차원)을 가지는 벡터로 표현되며, 이는 이미지, 문서, 오디오와 같은 비정형 데이터를 나타내기 위해 사용됩니다.
- 관계형 DB: 전통적으로 테이블 형식의 구조화된 데이터(행과 열)를 저장합니다. 숫자, 문자열과 같은 기본 자료형으로 데이터를 표현하며, 고정된 스키마에 따라 데이터가 저장됩니다.
2. 검색 및 쿼리 방식
- 벡터 DB: 주로 유사도 검색에 최적화되어 있으며, 벡터 간의 거리(예: 코사인 유사도, 유클리드 거리)를 계산해 가까운 데이터를 찾는 방식입니다. 대규모 벡터의 검색 성능을 높이기 위해 Faiss, HNSW, ANNOY 같은 효율적인 근사 최근접 이웃 알고리즘을 사용합니다.
- 관계형 DB: SQL 쿼리를 통해 정확한 조건에 맞는 데이터를 찾는 데 최적화되어 있습니다. 주로 필터링, 집계, 정렬, JOIN과 같은 연산이 있으며, B-트리, 인덱스 등의 자료 구조를 통해 성능을 최적화합니다.
3. 데이터 일관성 및 ACID 지원
- 벡터 DB: 주로 일관성에 대한 요구가 높지 않으며, ACID(Atomicity, Consistency, Isolation, Durability) 속성 지원이 제한적입니다. 일관성보다는 빠른 근사 검색 성능이 우선입니다.
- 관계형 DB: 트랜잭션의 원자성, 일관성, 격리성, 지속성을 보장하는 ACID 속성을 지원하여 은행, 금융 등 데이터의 정확성과 일관성이 중요한 응용 프로그램에 적합합니다.
4. 사용 사례
- 벡터 DB: 검색, 추천 시스템, 자연어 처리, 컴퓨터 비전 등과 같은 비정형 데이터 기반 유사도 검색에 활용됩니다. 예를 들어, 검색 쿼리에 가장 유사한 이미지나 문서, 추천할 제품 등을 찾는 데 적합합니다.
- 관계형 DB: 사용자 정보, 금융 거래, 재고 관리, 주문 처리 등 정형 데이터와 데이터 무결성이 중요한 시스템에서 사용됩니다. 정교한 트랜잭션 처리와 복잡한 질의가 필요한 응용 프로그램에 적합합니다.
5. 확장성
- 벡터 DB: 대부분 수평 확장성을 지원하여 대규모 데이터셋에서 빠른 검색을 가능하게 합니다.
- 관계형 DB: 전통적인 관계형 데이터베이스는 수직 확장에 적합합니다. 하지만 최근에는 분산 데이터베이스 기술을 통해 수평 확장을 지원하는 RDBMS도 존재합니다.
요약
벡터 DB는 유사도 검색과 비정형 데이터에 적합하며, 전통적인 RDBMS는 정형 데이터와 트랜잭션 처리가 필요한 시스템에 적합합니다. 두 DB 시스템은 다루는 데이터의 성격과 검색 방식이 달라, 목적에 따라 선택이 달라집니다.
'DeepLearning' 카테고리의 다른 글
model parallelism: 파이프라인 병렬화와 텐서 병렬화 (1) | 2024.11.01 |
---|---|
LLM 캐시의 한계 (0) | 2024.11.01 |
AutoModel 과 기타 모델 호출 형태 (0) | 2024.10.31 |
DPO(Direct Preference Optimization)와 PPO(Proximal Policy Optimization) (2) | 2024.10.31 |
Hugging Face - Posts, Docs, Pricing (5) | 2024.10.30 |
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Lora
- 해시
- Hugging Face
- 코딩테스트
- English
- Github
- LIST
- Python
- nlp
- t5
- speaking
- #패스트캠퍼스 #패스트캠퍼스ai부트캠프 #업스테이지패스트캠퍼스 #upstageailab#국비지원 #패스트캠퍼스업스테이지에이아이랩#패스트캠퍼스업스테이지부트캠프
- recursion #재귀 #자료구조 # 알고리즘
- 오블완
- #패스트캠퍼스 #UpstageAILab #Upstage #부트캠프 #AI #데이터분석 #데이터사이언스 #무료교육 #국비지원 #국비지원취업 #데이터분석취업 등
- classification
- LLM
- RAG
- git
- cnn
- Array
- clustering
- #패스트캠퍼스 #패스트캠퍼스AI부트캠프 #업스테이지패스트캠퍼스 #UpstageAILab#국비지원 #패스트캠퍼스업스테이지에이아이랩#패스트캠퍼스업스테이지부트캠프
- Transformer
- 리스트
- 파이썬
- PEFT
- 손실함수
- 티스토리챌린지
- Numpy
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함