CS

[CS] redis에서 RDB와 AOF를 동시에 사용할 수 있는가?

Dong's Universe 2024. 4. 18. 10:06

결론은 yes이다.

이 둘을 활용하는 것은 redis.conf에서 aof-use-rdb-preamble yes로 설정할 수 있다.

5.0부터 기본값이 yes로 바뀌었다고 한다.

 

아래는 왜 둘을 동시에 사용하는 것이 좋은지에 대한 설명

 

RDB(Snapshot) VS AOF(Append only file)

 

RDB 방식은 저장하는데 AOF 방식보다 시간이 오래 걸립니다. 하지만 프로그램을 재시작할때 AOF에 비해 로딩 시간이 빠릅니다.

반면 AOF 방식은 모든 write/update 명령어를 모두 log 파일에 기록합니다. 즉 append만 하기 때문에 쓰는 시간이 RDB보다 빠릅니다. 하지만 프로그램을 재시작할때 모든 명령어를 읽어야 하기 때문에 로딩이 RDB보다 느립니다.

따라서 현재 Redis를 활용할 때는 이 둘을 적절히 혼용해서 사용합니다. 이 둘을 혼용하면 RDB가 만든 특정 스냅샷부터만 AOF 파일을 만들면 되기 때문에 둘의 장단점을 서로 보완할 수 있습니다.

이 둘을 활용하는 것은 redis.conf에서 aof-use-rdb-preamble yes로 설정할 수 있습니다. 5.0부터 기본값이 yes로 바뀌었습니다.

 

Reference


 

Redis 정복기 1편 : 백업

하나둘씩 모든 별을 세다가.

velog.io

 

[REDIS] 📚 캐시 데이터 영구 저장하는 방법 (RDB / AOF)

Redis 데이터의 영속성 (Redis Persistence) Redis는 In-memory DB 임에도 불구하고, 메모리 데이터를 disk에 저장할 수 있는 특징이 있다. 그래서 서버가 꺼진 후 restart되더라도, disk에 저장해놓은 데이타를

inpa.tistory.com

 

redis - load from RDB and keep writing the AOF

I'm working in combined mod - RDB + AOF. I'm looking for a way to load after a restart from the RDB file - mainly for fast restarts. On top of that, I want to continue writing the AOF. Once I know ...

stackoverflow.com

 

redis/redis.conf at 6.0.6 · redis/redis

Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs,...

github.com

 

Redis AOF-USE-RDB-PREAMBLE Parameter

 

redisgate.kr