관계형 데이터베이스 (RDB, Relational Database)
빠른 업데이트가 필요할 때 사용
ACID 트랜잭션을 지원하기 때문에 '모두 성공하거나, 하나라도 실패하면 취소'라는 원칙을 철저하게 지킬 수 있다
그러나 데이터가 지나치게 커지거나 분석 쿼리를 자주 돌려야하는 경우에는 속도가 떨어질 수 있다
MySQL, PostgreSQL, Oracle DB, Ms SQL 등
열 데이터베이스 (Columnar Database)
빅데이터 분석에 유리
열단위로 데이터를 저장하기 때문에 대규모 데이터 분석에 유리
한 속성에 대해서 대규모로 계산하는 것은 쉽지만, 여러 속성에 대한 대규모 계산은 RDB보다 느림
데이터를 자주 수정하는 경우에도 RDB보다 불리
Apache HBase, Amazon Redshift, Click House 등
문서형 데이터베이스 (Document Database)
유연한 데이터 구조가 필요할 때 사용
JSON 형태의 문서를 유연하게 저장할 수 있다
객체지향 언어로 개발할 때도 객체 형태로 만든 정보를 바로 JSON으로 변환해 저장할 수 있어 편리하다
Mongo DB 등
그래프 데이터베이스 (Graph Database)
복잡한 관계를 쉽게 표현 할 때 유리 (추천 시스템, 소셜 네트워크 분석 등)
노드와 엣지라는 개념으로 데이터의 관계를 저장하는 방식
RDB에서 JOIN을 통해 관계를 찾을 수 있지만 그래프 데이터베이스는 훨씬 직관적으로 복잡한 관계를 추적할 수 있게 해줌
ArangoDB, Neo4j 등
벡터 데이터베이스 (Vector Database)
다양한 형태의 데이터를 저장할 때 유리 (AI)
텍스트, 이미지, 음성, 동영상 등 다양한 형태의 데이터를 임베딩 기법으로 숫자 백터로 변환하여 저장
Pinecone, Milvus, Weaviate 등
키-값 데이터베이스 (Key-Value Database)
단순함이 필요할 때 유리 (실시간성이 중요한 서비스, 캐싱 및 세션 관리)
키와 값 쌍으로 데이터를 보관
Memcached, Redis 등
시계열 데이터베이스 (Time Series Database)
시계열 데이터 처리 (예약 수, 접속량, 매 시간 기온 등)
time stamped 데이터를 처리하기에 최적화된 데이터베이스
InfluxDB 등
Reference
언제, 어떤 DB를 써야 할까? 데이터베이스 개념 정리 | 요즘IT
데이터베이스는 말 그대로 정보를 저장하는 창고 같은 곳입니다. 우리가 원하는 정보를 빠르고 정확하게 꺼내 올 수 있어야 하고, 동시에 저장 용량이 커도 처리에 무리가 없어야 하죠. 오늘은
yozm.wishket.com
'Database > Database' 카테고리의 다른 글
2025년을 위한 7개의 데이터베이스 (1) | 2025.02.02 |
---|---|
효율적인 데이터베이스 설계와 최적화 기법 (0) | 2024.08.17 |
PostgreSQL VS MySQL (0) | 2024.07.07 |
DRBD (Distributed Replicated Block Device) (1) | 2024.02.17 |
갈레라 클러스터 (Galera Cluster) (1) | 2024.02.17 |