Redis 사용하는 이유
- 손쉽게 사용할수있는 In-memory 저장소
- 높은 성능
- 다양한 활용성
- 세션 관리나 캐시
정의
- Storage: 데이터 저장소 (데이터 관점)
- DataBase: 전통적인 DBMS의 역할을 수행한다. NoSQL
- Middleware: 어플리케이션이 이용할 수 있는 유용한 기능을 제공하는 소프트웨어
장점
- 아주 빠른 저장소로 활용
- 분산된 서버들간의 커뮤니케이션
- 내장된 자료구조를 활용한 기능 구현
In-Memory DB 란 ?
일반적으로 DB는 디스크에 저장하는데
레디스는 메모리(RAM)에 저장한다.
따라서 아주 빠르다. 대신 비싸다.
메모리는 휘발성인데?
지워져서 안되는 중요데이터가 아닌 지워져도 큰 문제가 없는 로그인 세션데이터나 캐시같은 용도로 사용된다.
데이터 저장 구조
- DB관점에서의 데이터 모델 구조
- 네트워크 모델, 계층형 모델(Tree), 관계형 모델 등등..
Ksy-Value Store
- 자바의 Map과 같음
- 장점
- 단순해서 사용하기 쉬움
- Hash값을 이용해서 속도가 빠름
- 분산 환경에서 수평적 확장성
- 단점
- 키값만을 통해서 값을 읽을 수 있음
- 범위 검색 등의 복잡한 질의가 불가능
Redis 활용
- Session Store
- Cache
- Linit Rater
- Job Queue
특성
- Key-Value Store
- 다양한 자료구조를 지원(String, Hash, Set, List등)
- 원하는 수준의 영속성을 수정할수있음
- In-Memory라서 매우 빠름
'대용량 처리 이해 > Redis' 카테고리의 다른 글
Pub, Sub 패턴 (0) | 2023.02.20 |
---|---|
Redis Cache Layer (0) | 2023.02.19 |
Redis Session Clustering (0) | 2023.02.18 |
Redis Data Type (0) | 2023.02.14 |