< Redis 개요 >
Redis는 nosql의 한 종류로써 모든 데이터를 메모리에 저장하고 조회하는
인메모리 방식의 데이터베이스이다.
nosql 구조답게 key-vale 데이터 구조 스토어이고 여러 자료구조를 지원하며 크게
String, Bitmaps, Bitfield, Hashes, Lists, Sets, Sorted sets, Geospartial indexess...
등의 타입을 지원한다.
RDB (Relational DataBase)에 비해 많은 자료구조를 지원한다는 장점도 있지만,
인메모리 방식의 DB 이기 때문에 Disk 에 직접 읽고 쓰는 작업을 수행하는
RDB에 비해서 월등히 빠르다는 장점이 있다.
< Redis의 특징 >
1) 영속성을 지원하는 인메모리 데이터 저장소이다.
2) 읽기 성능 증대를 위한 서버 측 복제를 지원한다.
3) 전체 데이터베이스의 초기 복사본을 받는 마스터/슬레이브 복제를 지원한다.
4) 마스터에서 쓰기가 수행되면 슬레이브 데이터 세트를 실시간으로 업데이트하기 위해
연결된 모든 슬레이브로 데이터를 전송한다.
5) 쓰기 성능 증대를 위한 클라이언트 측 Sharding을 지원한다.
6) C언어로 작성되어 성능문제에서 자유로운 편이다.
< Redis의 아키텍처 >
메모리 영역
1) Resident Area (Working Set)
사용자가 Redis 서버에 접속해서 처리하는
모든 데이터가 가정 먼저 저장되는 영역이며 실제 작업이 수행되는 영역.
2) 메모리영역 자체가 실제 작업이 수행되는 공간이다.
파일 영역
1) AOF File
Redis는 모든 데이터를 메모리 상에 저장하고 관리하는
인-메모리 기반의 데이터 처리기술을 제공하지만
중요한 데이터의 경우 저장할 필요가 있을 수가 있는데
이를 대비하여 제공되는 디스크 영역이다.
2) DUMP File
AOF 파일과 같이 사용자 데이터를 디스크 상에 저장할 수 있지만
소량의 데이터를 일시적으로 저장할 때 사용되는 파일이다.
프로세스 영역
1) Server Process
Redis의 인스턴스를 관리하고 사용자가 요구한 작업을 수행하는 프로세스이다.
2) Client Process
사용자 애플리케이션에 의해 실행되는 명령어를 실행하기 위해 제공되는 프로세스이다.
'Redis' 카테고리의 다른 글
[Redis] key 삭제 api 구현 (0) | 2023.06.12 |
---|---|
[Redis] Key 삭제 (0) | 2023.05.24 |
[Redis] SCAN (2) | 2023.03.28 |
[Redis] Redis 설치 (0) | 2022.10.12 |
[Redis] Redis Cluster (0) | 2022.08.11 |