1. RDB란 ?
- 관계형 데이터베이스
- 데이터를 행과 열이 있는 테이블 형식으로 저장한다.
- 열에는 데이터 속성, 행에는 데이터 값이 있다.
1-1 . RDBMS 단점
- 🙅🏻 유연한 확장성의 부족
- RDBMS는 데이터를 저장하기 위해 사전에 스키마(테이블 구조)를 정의해야 한다.
- 새로운 컬럼을 추가하거나 기존 스키마를 수정할 때, 기존 데이터 전체에 영향을 미칠 수 있어 유연성이 떨어진다.
- 특히 대용량 데이터베이스에서는 컬럼 추가나 스키마 변경 작업이 느리거나 복잡할 수 있다.
- 🙅🏻 과도한 정규화
- 데이터 중복 제거를 위한 정규화를 진행하게 된다면, 데이터를 불러올때 join, join … 하게 되면서 성능 저하 가능성이 있다.
→ 테이블 간 관계가 복잡해 질 수 있다는 단점이 있다.
- 🙅🏻 트래픽이 몰린다면 ?
- RDBMS는 기본적으로 수직 확장(Scale-up) 방식에 의존하기 때문에, 서버 사양을 높이는 방식 외엔 처리량 한계가 존재한다.
- write 요청이 과하다면, memory 사용양이 늘어나면서 부하가 발생할 수 있다.
- Write 요청은 대부분의 RDBMS에서 하나의 Master(Primary) 노드만 처리 → ACID 보장을 위해
⚠️ 내가 이해한 수평 확장이 어려운 이유 ⚠️
RDBMS에서 read/write로 요청이 들어올때, read 요청은 여러대의 서버를 두어서 분산 시킬 수 있지만, write는 일관성 유지 때문에 분산이 어렵다. write를 담당하는 서버는 어쩔 수 없이 scale-up 방식을 사용해야 해서, RDBMS는 수평 확장 방식에 유연성이 부족하다.
✔️ RDBMS 예시
✅ MySQL, PostgreSQL, Oracle
2. NoSQL이란 ?
- 비관계형 데이터베이스
- 데이터를 비정형 또는 반정형 (문서, 키-값, 컬럼, 그래프 등)구조로 저장한다
✔️ NOSQL DB 예시
✅ MongoDB(문서형), Redis(키-값), Cassandra(컬럼형), Neo4j(그래프형)
2-1 . NoSQL 특징
- 유연성 있는 스키마
- 중복 허용( 정규화 안함)
- scale-out(수평 확장)에 최적화 되어져 있다.

3. RDBMS 와 NoSQL 차이
3-1. 데이터 무결성 메커니즘
원자성, 일관성, 격리 및 내구성(ACID)은 데이터 처리에서 오류나 중단이 발생하더라도 데이터 무결성을 유지할 수 있는 데이터베이스의 기능을 말한다.
✅ RDBMS
- 관계형 데이터베이스 모델은 엄격한 ACID 속성을 따른다.
- 단일 작업이 실패하면 전체 작업 세트가 실패한다. → 데이터 정확성이 항상 보장
✅ NOSQL
- 비관계형 데이터베이스는 가용성을 보장하지만 즉각적인 일관성은 보장하지 않는다.
- 데이터베이스 상태는 시간이 지남에 따라 변할 수 있으며 결국 일관된 상태가 된다.
- 일부 비관계형 데이터베이스는 ACID 규정 준수와 성능 또는 기타 장단점을 제공할 수 있다.
3-2. scale-out
- RDBS
- NOSQL
용어 정리
⚙️ Scale-Up (수직 확장)
- 정의: 기존 서버에 CPU, RAM, 디스크 등 하드웨어 성능을 높이는 방식
- 비유: 데스크탑 컴퓨터에 더 좋은 부품을 끼우는 것
- 장점: 구조를 크게 바꾸지 않고 성능 향상 가능
- 단점: 성능 향상에 한계가 있음, 고사양 장비는 비용이 매우 높음
예: 8코어 서버를 32코어 서버로 교체
🧱 Scale-Out (수평 확장)
- 정의: 서버를 여러 대 추가해서 분산 처리하는 방식
- 비유: 컴퓨터를 여러 대 두고 작업을 나누는 것
- 장점: 확장성이 뛰어나고, 트래픽이 늘어나도 서버 추가로 대응 가능
- 단점: 시스템이 복잡해지고, 데이터 분산이나 일관성 유지가 어려움
예: 서버 1대를 4대로 늘려서 트래픽을 분산 처리

참고
'CS 공부' 카테고리의 다른 글
| SSE란 ? (4) | 2025.08.18 |
|---|---|
| 웹소켓 개념 (3) | 2025.08.07 |
| 멀티 태스킹, 동시성, 동기, 비동기 , 락 개념 정리 (4) | 2025.08.03 |
| 네트워크 기초 (0) | 2025.07.04 |
| 프로그래밍 패러다임 (0) | 2025.06.20 |