[Redis] Redis란?

nhchoi·2021년 11월 15일
0

Redis

목록 보기
1/1
post-thumbnail

Redis는 Remote Dictionary Server로,
"키-값" 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비관계형 데이터베이스 관리 시스템(DBMS)이다. 모든 데이터를 메모리로 불러와서 처리하는 "인-메모리" 형식이다.

Redis의 특징

1. 다양한 언어 지원

Java, python, PHP, C, C++, C#, Javascript, Node.js, Ruby, R, Go 등의 다수의 언어가 지원됨.

2. 빠른 속도

디스크에 데이터를 쓰지 않고 메모리에서 데이터를 처리하기 때문에 속도가 빠르다.

3. 다양한 데이터 구조 제공

단순한 Key-Value 1:1 매핑만이 아니라 List, Sorted Set, Hash 등의 데이터 구조를 제공함.

4. Single Thread로 동작

레디스는 싱글 스레드로 동작하리 때문에 race condition을 피해 트랜잭션의 문제도 해결해 줄 수 있다.

Redis Caching

레디스는 key-value 입출력 방식을 사용하기 때문에 주 데이터베이스로 사용하기엔 부적합하다는 의견이 있다.

이유 1. 관계형 DBMS처럼 복잡한 검색이 어렵다.
이유 2. 질의 언어가 없음

따라서, 캐싱을 위한 보조 데이터베이스로 사용하는 경우가 보편적이다. 미리 데이터를 읽어두었다가 요청이 올 경우 빠르게 응답하기 위한 목적으로 사용할 수 있다.

profile
👩‍💻

0개의 댓글