Redis의 백업

Redis는 In-Memory 형식이기 때문에 영속적으로 데이터를 관리하기 위해 디스크에 저장하여 복구, 유지될 수 있도록 해야한다. 시스템이 장애없이 서비스된다면 데이터가 소실될 일이 없겠지만 만약 백업이 없는 상태에서 장애로 인해 시스템이 다운되는 상황이 발생한다면 모든 데이터가 소실될 것이다. 이와 같은 상황을 방지하기 위해 우리는 데이터를 영속성 메모리(디스크)에 저장하는 백업과정이 필수적이다.

RDB(Redis Database)를 이용한 백업

특정 시점의 스냅샷으로 데이터를 저장, 재시작 시 RDB파일이 있다면 해당 파일을 이용하여 복구한다. 백업주기는 임의로 설정할 수 있다.

장점

단점

<aside> 💡 Fork 방식이란, 프로세스를 복사하여 새로운 프로세스를 만들고 그 프로세스에서 백업을 수행하는 방식으로 백업 중에도 Redis 서버가 계속해서 실행되기 때문에 백업 수행 중에도 Redis 서버를 사용할 수 있다. 이러한 방식 때문에 RDB 방식은 리소스 소모가 많다.

</aside>

RDB 설정 템플릿 → https://redis.io/docs/management/config/

AOF(Append Only File)를 이용한 백업

AOF는 파일이 수정되지 않고 뒤에 덧붙이는 방식으로 Redis에서는 모든 쓰기 요청(데이터의 변경)에 대한 모든 명령어가 백업파일에 기록된다. Redis가 재시작 되었을 때 모든 명령어를 재실행하는 방식으로 백업을 수행한다.

장점