본문 바로가기
Computing and DB 🖥/Database

Redis란?

by dudefromkorea 2024. 3. 27.

 

NoSQL 기반 Key-Value 저장소의 특징과 활용

 

Redis는 NoSQL 데이터베이스 중 하나로,

Key-Value 구조를 기반으로 동작하는

인메모리 데이터 저장소입니다.

 

Redis와 관계형 데이터베이스(RDBMS) 비교

항목 Redis 관계형 데이터베이스 (RDBMS)
데이터 모델 Key-Value 기반 테이블 기반 (행, 열 구조)
저장 위치 메모리(RAM) 디스크(SSD, HDD)
속도 매우 빠름 (ns 단위 처리) 상대적으로 느림 (ms 단위)
트랜잭션 지원하지만 복잡한 ACID 특성 부족 ACID 완벽 지원

 

Redis의 주요 특징

  • 인메모리 데이터베이스 → 데이터를 메모리에 저장하여 빠른 처리 속도 보장
  • 다양한 데이터 구조 지원String, List, Set, Sorted Set, Hash 등 활용 가능
  • 영속성(AOF, RDB) 옵션 제공 → 디스크에 저장하여 데이터 유실 방지 가능
  • Pub/Sub 기능 → 메시지 브로커 역할 수행 가능
  • 분산 처리 가능 → Redis Cluster를 활용하여 여러 노드로 확장 가능

 

Redis의 활용 사례

  • 캐싱 (Caching) → DB 부하 감소, 성능 최적화 (예: 세션 스토리지)
  • 실시간 데이터 처리 → 실시간 랭킹 시스템, 실시간 분석
  • 메시지 큐 → Pub/Sub 기능을 이용한 이벤트 기반 처리

 

Redis의 단점

데이터 유실 가능성 → 메모리 기반이므로, 서버 다운 시 데이터 손실 위험

메모리 사용량 → 대량 데이터를 저장할 경우 메모리 비용이 증가

복잡한 관계 표현 어려움 → 관계형 데이터베이스(RDBMS)처럼 조인을 활용한 복잡한 쿼리 처리 불가능

 

결론

Redis는 빠른 속도실시간 처리에 강점을 가지지만,

데이터 영속성 관리가 필요한 경우 보완적인 대책이 필요

 

728x90
반응형

'Computing and DB 🖥 > Database' 카테고리의 다른 글

SQL Injection  (0) 2024.02.02
[JDBC] - PreparedStatement  (0) 2024.01.31
DB LOCK 에 대해서 알아보자  (0) 2024.01.23
NoSql 이 뭐야?  (0) 2023.12.12
대용량을 대비한 DB... 어떻게 설정해? (feat.PostgreSQL)  (33) 2023.11.14