1. NoSQL이란?
- NoSQL = Not Only SQL의 약자로, “SQL만이 유일한 해답은 아니다”라는 의미입니다.
- 고정된 스키마 없이 데이터를 저장할 수 있으며, 대규모 데이터를 빠르게 처리하는 데 적합합니다.
- 수평 확장이 쉬워 대규모 트래픽 처리에 유리합니다.
2. NoSQL의 주요 특징
| 특징 | 설명 |
| 스키마 유연성 | 미리 정해진 테이블 구조 없이 데이터 저장 가능 |
| 수평적 확장성 | 서버를 늘려서(Scale-Out) 성능 확장 가능 |
| 비정형 데이터 지원 | JSON, XML, 이미지, 로그 등 다양한 형태의 데이터 저장 가능 |
| 고속 읽기/쓰기 성능 | 대용량 데이터를 빠르게 처리 |
3. NoSQL의 주요 유형
| 유형 | 설명 | 예시 |
| 문서(Document)형 | JSON, BSON 등 문서 단위로 저장 | MongoDB, CouchDB |
| 키-값(Key-Value)형 | 키에 하나의 값을 매핑 | Redis, DynamoDB |
| 열(Column)형 | 열 기반 저장, 대량의 데이터 분석에 적합 | Cassandra, HBase |
| 그래프(Graph)형 | 노드와 간선 구조, 관계 중심 데이터에 강점 | Neo4j, Amazon Neptune |
4. NoSQL이 사용되는 상황
- 실시간 추천 시스템 (예: 쇼핑몰, 영화 추천 등)
- 사용자 로그나 센서 데이터 저장
- 소셜 네트워크에서 사용자 간의 관계 표현
- 대용량 데이터를 빠르게 저장하고 분석해야 하는 경우
5. NoSQL vs SQL (RDBMS)
| 구분 | NoSQL | RDBMS (SQL) |
| 구조 | 유연한 구조 (스키마 없음) | 정형화된 테이블 구조 (스키마 필요) |
| 확장성 | 수평적 확장 (Scale-Out) | 수직적 확장 (Scale-Up) |
| 트랜잭션 | 일부 지원 (BASE 모델) | 강력한 트랜잭션 보장 (ACID) |
| 사용 목적 | 빠른 처리, 빅데이터 분석 | 정합성, 복잡한 쿼리, 정형 데이터 |
'SQL' 카테고리의 다른 글
| 슈퍼키란? (0) | 2025.05.17 |
|---|---|
| 스키마(Schema)란? (0) | 2025.05.17 |
| 명시적 조인 vs 비명시적 조인 (0) | 2025.05.06 |
| DBeaver SQL 한글 마지막 글자 없어짐 현상 해결 방법 (0) | 2025.04.16 |
| 관계형 데이터베이스(RDB)와 NoSQL 데이터베이스의 차이 (0) | 2025.04.13 |