어떤 상황에서 RDBMS를 사용하고, 어떤 상황에서 NoSQL인 Redis를 섞어 써야 프로젝트의 성능이 최적화되는지에 대한 기준을 잡는 과정으로 Redis 기초 개념을 정리하고자 한다.
메모리(RAM) 연산이 디스크 연산보다 빠른 이유

1. 디스크가 아닌 RAM을 사용 (In-Memory Architecture)
: Redis는 SSD나 HDD가 아닌 RAM(Memory)을 주 저장소로 사용
- 일반 데이터베이스 (Disk-based) : 데이터가 SSD나 HDD에 저장됩니다. 데이터를 읽으려면 디스크 I/O가 발생하며, 물리적인 탐색 시간이 필요하다.
- Redis (RAM-based) : 모든 데이터가 RAM에 올라가 있고, 디스크 I/O 없이 CPU가 메모리에 곧바로 접근, 이는 곧 메모리 반도체에 전기가 통하느냐 마느냐의 상태만 찰나의 순간에 바꾸게 됨.
2. 압도적인 접근 속도 차이 (단위의 차이)
: Redis 가 사용하는 RAM은 SSD보다 수백 배, HDD보다 수만 배 더 빠르다.
3. CPU 캐시와의 근접성
: Redis는 가장 느린 하단부(SSD,HDD)를 완전히 배제하고, RAM에서 동작한다, 이는 CPU가 데이터를 처리하기 위해 대기하는 시간을 극적으로 줄여주게 됨
4. 접근 단위의 차이가 발생
- 디스크 (Block I/O) : 데이터를 블록 단위로 읽으며 글자 하나만 필요해도, 블록 전체를 디스크에서 꺼내와야 하는 오버헤드가 큰 상황이 발생
- 메모리 (Byte Addressable) : Byte 단위로 직접 접근이 가능하며, 필요한 데이터만 즉시 가져올 수 있음
'Spring > 백엔드 기초' 카테고리의 다른 글
| [개념정리] Kafka - Broker와 Consumer Group (0) | 2026.01.05 |
|---|---|
| [개념정리] Kafka란 무엇인가? (0) | 2026.01.02 |
| [개념정리] WebSocket 과 STOMP (0) | 2025.12.02 |
| [백엔드 기초] 데이터베이스 기초 (0) | 2025.11.13 |
| [백엔드 기초] CI / CD (0) | 2025.11.12 |