티스토리 뷰
1. Redis란?
Redis는 Remote Dictionary Server의 약자로 이름 그대로 dictionary 구조, 즉 key-value 형태로 비정형 데이터를 저장하고 관리하기 위한 오프 소스 기반의 비관계형 데이터 베이스 관리 시스템(DBMS)이다. Redis는 문자열, 해시, 목록, 집합, 범위, 쿼리가 있는 정렬된 집합, 비트맵, 하이퍼로그, 자리 공간 인덱스 및 스트림과 같은 컬렉션을 제공한다. Redis는 여러 데이터 형식을 지원하며 크게 String, Set, Sorted Set, Hash, List이 있다.
2. Redis의 특징
- 영속성을 지원하는 인메모리 데이터 저장소
- 영속성을 보장하기 위해 데이터를 Disk에 저장 가능
- Disk에 저장하는 방식은 크게 두 가지
- RDB(Snapshotting) 방식 : 순간적으로 메모리에 있는 내용을 Disk에 전체를 옮겨 담는 방식
- AOF(Append On File) 방식 : Redis의 모든 write/update 연산 자체를 모두 log 파일에 기록하는 형태
- 읽기 성능 증대를 위한 서버 측 복제를 지원
- 전체 데이터베이스의 초기 복사본을 받는 마스터/슬레이브 복제를 지원
- 마스터에 쓰기가 수행되면 슬레이브 데이터 세트를 실시간으로 업데이트하기 위해 연결된 모든 슬레이브로 전송
- 쓰기 성능 증대를 위한 클라이언트 측 샤딩(Sharding)을 지원
- 샤딩 : 같은 테이블의 스키마를 가진 데이터를 다수의 데이터베이스에 분산하여 저장하는 방법
- 다양한 서비스에서 사용되며 검증된 기술
참고자료
Blog is powered by
Tistory / Designed by
Tistory