cabbage.log
로그인
cabbage.log
로그인
Redis 알아보기
cabbage
·
2023년 2월 19일
팔로우
0
0
기타
목록 보기
10/26
Redis
Redis(
Re
mote
di
ctionary
s
erver)는 'key-value' 구조로 데이터를 관리하는 비관계형 데이터베이스 관리 시스템(NoSQL, NonRDBMS)이다.
메모리 기반의 'key-value' 구조로 데이터를 관리하여 디스크 기반의 일반적인 데이터베이스보다 I/O 속도가 빠르다.
일반적인 데이터베이스보다 I/O 속도가 빠르기 때문에, 일반적으로 전체 서비스에서 속도 향상을 위한 보조 데이터베이스로 사용한다.
Redis 데이터 처리 방법
종류
역할
set
데이터 저장하기
get
데이터 조회하기
rename
데이터 변경하기
randomkey
저장된 key 중 하나의 key를 랜덤 검색하기
keys
모든 key 검색하기
exists
검색 key 존재 여부 확인하기
mset
여러 데이터 저장하기
mget
여러 데이터 검색하기
Redis의 사용 이유
메모리 기반으로 데이터를 관리하기 때문에 디스크 기반의 데이터베이스보다 I/O 속도가 빠르다.
이런 점 때문에 Redis를 캐시 서버로 사용할 수 있다.
자주 조회되는 데이터를 Redis에 저장하고, Redis를 데이터베이스보다 우선 조회하여 전체적인 서비스 속도를 향상시킬 수 있다.
Redis의 특징
'key-value' 구조이므로 쿼리를 사용하지 않는다.
메모리 기반이므로 데이터 처리 속도가 빠르다.
String, Set, Sorted Set, Hash, List 의 데이터 형식을 지원하므로 다양한 방식으로 데이터를 활용할 수 있다.
리스트 형식의 데이터 입력과 삭제가 빠르다.
메모리 기반이지만 영속적인 데이터 보존이 가능하다.
명령어를 사용해서 삭제하거나 expires를 설정하지 않으면 데이터가 삭제되지 않는다.
스냅샷 기능으로 메모리 내용을 복구할 수 있다.
싱글 스레드 기반
한번에 하나의 명령만 처리 가능하다.
명령어 처리 시간이 오래 걸리면 이후 명령어들은 대기해야 한다.
Redis의 단점
메모리 기반 데이터베이스의 특성 때문에 서버 장애가 발생했을 때 데이터가 유실될 수 있다.
메모리 관리가 필요하다.
싱글 스레드 기반이므로 처리 시간이 오래 걸리는 명령의 사용을 지양해야 한다.
참고
[Redis] Redis란? & Redis 사용방법
Programming/Web Redis란? 레디스의 기본적인 개념 (인메모리 데이터 구조 저장소)
Redis란?
cabbage
캐비지 개발 블로그입니다. :)
팔로우
이전 포스트
마이크로서비스 아키텍쳐(MSA)
다음 포스트
로그아웃 알아보기
0개의 댓글
댓글 작성