본문 바로가기
DB/Redis

Redis 캐시 데이터 영구 저장하는 방법 (RDB / AOF)

by doriver 2025. 3. 11.

Redis 데이터의 영속성( Redis Persistence )

Redis는 In-memory DB 임에도 불구하고, 메모리 데이터를 disk에 저장할 수 있다.
서버가 꺼진 후 restart되더라도, disk에 저장해놓은 데이터를 다시 읽어서 메모리에 로딩하기 때문에 데이터가 유실되지 않는다.

 

이런 Persistent(영속성)은 휘발성 메모리 DB를 데이터 스토어로서 활용할수 있는 장점이 있지만

, 장애의 주 원인이 되기도 한다.

 

데이터를 저장하는 방법은 RDB( snapshotting )방식과 AOF( Append only file ) 두가지가 있다.

RDB방식은 특정한 간격마다 메모리에 있는 레디스 데이터 전체를 디스크에 쓰는 것이다.(백업에 용이)

 

AOF방식은 redis의 모든 write/update 연산 자체를 모두 log파일에 기록하는 형태이다.
조회를 제외한 입력/수정/삭제 명령이 실행될 때 마다 기록된다.


그리고 서버가 재시작될 때, log에 기록된 write/update 연산을 재 실행하는 형태로 데이터를 복구하는 방식이다.

 

데이터는 다음과 같은 순서로 처리된다
1. 클라이언트가 Redis 에 업데이트 관련 명령을 요청한다.
2. Redis는 해당 명령을 AOF에 저장한다.
3. 파일쓰기가 완료되면 실제로 해당 명령을 수행해서 Redis 메모리에 내용을 변경한다.

'DB > Redis' 카테고리의 다른 글

Messaging with Redis  (1) 2025.02.09
Redis 명령어 02  (0) 2024.06.26
Redis 01  (0) 2024.06.26
Redis 명령어 01  (0) 2024.06.25
Redis 시작 ( 윈도우 )  (0) 2024.06.24