IT
RDBMS 와 NoSQL 비교해 보기
hoonylab
2025. 4. 17. 14:31
728x90
반응형
🔍 RDBMS vs NoSQL 차이점
항목 | RDBMS (Relational DBMS) | NoSQL (Not Only SQL) |
---|---|---|
데이터 모델 | 테이블 기반 (행/열) | 문서, 키-값, 그래프, 컬럼 기반 등 |
스키마 | 고정 스키마 (정해진 구조) | 유연한 스키마 또는 스키마 없음 |
확장성 | 수직 확장 (서버 스펙 업) | 수평 확장 (서버를 여러 개로 분산) |
트랜잭션 | ACID 보장 (정합성 우선) | 대부분 Eventually Consistent (속도 우선) |
쿼리 언어 | SQL | 전용 API, 쿼리 언어 다양 |
관계 | 테이블 간의 JOIN 가능 | JOIN 지원 안 하거나 제한적 |
🛠️ 대표적인 툴 예시
RDBMS
- MySQL: 오픈소스, 웹 서비스에서 많이 사용
- PostgreSQL: 오픈소스, 기능 풍부 (JSON 지원 등도 있음)
- Oracle DB: 기업에서 많이 사용하는 상용 DB
- Microsoft SQL Server: 마이크로소프트 생태계와 연동 용이
NoSQL
- MongoDB: 문서형, JSON 형식 데이터를 자유롭게 저장
- Redis: 키-값 저장소, 빠른 캐시 및 세션 관리에 유리
- Cassandra: 분산 환경에 강한 컬럼형 DB
- Neo4j: 그래프형 DB, 복잡한 관계형 데이터에 적합
✅ 장단점 비교
분류 | 장점 | 단점 |
---|---|---|
RDBMS |
- 데이터 정합성 우수 - 복잡한 쿼리 및 JOIN 지원 - 다양한 툴과 호환성 높음 |
- 유연성 부족 (스키마 변경 어려움) - 수평 확장 어려움 - 대용량 데이터 처리 시 성능 저하 |
NoSQL |
- 스키마 유연 - 대용량 데이터 처리에 적합 - 수평 확장 용이 |
- 정합성 보장 어려움 - 복잡한 쿼리나 관계 표현 어려움 - SQL처럼 통일된 쿼리 언어 부족 |
🎯 상황별 추천
상황 | 추천 DB |
---|---|
정형 데이터 + 관계형 구조 + 정합성 중요 | RDBMS (예: MySQL, PostgreSQL) |
유연한 데이터 구조 + 빠른 개발 | NoSQL (예: MongoDB) |
대규모 분산 시스템 + 빠른 읽기/쓰기 | NoSQL (예: Cassandra) |
실시간 캐싱, 세션 저장소 | NoSQL (예: Redis) |
복잡한 관계 탐색 (소셜 그래프 등) | NoSQL (예: Neo4j) |
728x90
반응형